【发布时间】:2013-06-18 11:38:59
【问题描述】:
这个Envelope映射的只有一个Envelope对象和2个Invoice对象。当我尝试使用以下代码查询时,它返回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();
}
【问题讨论】:
标签: hibernate hibernate-mapping