Hibernate 集合中的推土机映射问题

Hibernate 集合中的推土机映射问题,hibernate,mapping,dozer,Hibernate,Mapping,Dozer,我对推土机绘图有问题。问题是我需要将集合从实体映射到DTO 实体中的集合: private List<Devis> devises = new ArrayList<Devis>(0); @OneToMany(fetch = FetchType.LAZY, mappedBy = "idDemande") public List<Devis> getDevises() { return this.devises; } public void setDe

我对推土机绘图有问题。问题是我需要将集合从实体映射到DTO

实体中的集合:

private List<Devis> devises = new ArrayList<Devis>(0);

@OneToMany(fetch = FetchType.LAZY, mappedBy = "idDemande")
public List<Devis> getDevises() {
    return this.devises;
}

public void setDevises(List<Devis> devises) {
    this.devises = devises;
}

您可能是在Hibernate会话关闭后进行映射的。保持打开状态,或者将
FetchType
设置为
EAGER
如果您没有使用FetchType来EAGER,那么您必须创建一个新的服务,在这里调用一个新的Dao类。一旦您获得design的列表,您就使用条件或任何其他语言进行查询,然后映射到Dto类,但使用mapCollection()这个方法是由您设计的,您可以将实体映射到dto并返回dto列表。您并没有得到结果,因为您将列表映射到了类。这就是您获取错误的原因。如果你没有得到,然后给我留下评论,我会通过代码解释。如果你在这里给出一些代码

private List<DevisDto> devises = new ArrayList<DevisDto>();

public List<DevisDto> getDevises() {
    return devises;
}

public void setDevises(List<DevisDto> devises) {
    this.devises = devises;
}
org.hibernate.LazyInitializationException: illegal access to loading collection
MapId: null
Type: null
Source parent class: com.bnpparibas.realestate.workflowtma.entity.Devis
Source field name: lignes
Source field type: class org.hibernate.collection.internal.PersistentBag
Source field value: Unable to determine source field value
Dest parent class: com.bnpparibas.realestate.workflowtma.dto.DevisDto
Dest field name: lignes
Dest field type: java.util.List