この 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();
}