Hibernate отношения один-ко-многим возвращают ноль записей для дочерней коллекции - PullRequest
0 голосов
/ 27 марта 2020

У меня есть отношения один-ко-многим с Hibernate ORM, и при получении дочерних записей запрос всегда возвращается без значения,

Вот пример структуры Entity.

Родительский класс

@Entity
    @Table(name="evmp_master")
    public class EvmpPojo implements Serializable {

        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        private int id;
        private String cve_id;


        @OneToMany(mappedBy = "evmpPojo", fetch=FetchType.LAZY, cascade = CascadeType.ALL)
        private Set<EvmpHostsPojo> evmpHostsPojos = new HashSet<EvmpHostsPojo>();
        //Getter and Setter

Дочерний класс

@Entity
@Table(name="evmp_master_hosts")
public class EvmpHostsPojo implements Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private int id;
    private String cve_id;

    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name="cve_id",  insertable=false, updatable=false, nullable=false)
    @OnDelete(action = OnDeleteAction.CASCADE)
    private EvmpPojo evmpPojo;
    // //Getter and Setter

Основной метод

    Session session = HibernateUtil.getSessionFactory().openSession();
    session.beginTransaction();
    Criteria crit = session.createCriteria(EvmpPojo.class);
    List evmpHostsPojoList = crit.list();
     for (Iterator iterator = evmpHostsPojoList.iterator(); iterator.hasNext();){
         EvmpPojo evmpHostsPojo = (EvmpPojo) iterator.next(); 
          Set<EvmpHostsPojo> evmpHostsPojosSet=  evmpHostsPojo.getEvmpHostsPojos();

         System.out.println("Set Size- " +evmpHostsPojosSet.size());

        }   

System.out.println("Set Size- " +evmpHostsPojosSet.size()); всегда возвращается 0, даже в базе данных есть записи, связанные с ней

Пропустил ли я какой-либо обязательный комментарий

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...