0

この Envelope によってマッピングされる Envelope オブジェクトは 1 つと Invoice オブジェクトは 2 つだけです。次のコードでクエリを実行すると、同じ 2 つの Envelope オブジェクトが返されます。休止状態の注釈に問題があると思います。解決策はありますか?

Envelope envelope = new Envelope();
envelope.setPostBox(EnvelopePostBox.INBOX.name());        
List<Envelope> byTemplate = genericDao.getByTemplate(envelope);

エンベロープ エンティティ。

@OneToMany(cascade = CascadeType.ALL, mappedBy = "envelope", fetch = FetchType.EAGER)
private List<Invoice> invoiceList;

請求書エンティティ。

@JoinColumn(name = "envelope", referencedColumnName = "instance_identifier")
@ManyToOne(cascade = CascadeType.ALL,fetch = FetchType.EAGER)
private Envelope envelope;  

私のダオ法;

@Transactional(readOnly = true)
public <T> List<T> getByTemplate(T templateEntity) {
    Criteria criteria = getCurrentSession().createCriteria(templateEntity.getClass());
    criteria.add(Example.create(templateEntity));
    return criteria.list();
}
4

1 に答える 1