我有以下数据结构。
@Entity
public class Device extends AbstractEntity implements Serializable{
private int id;
//...
private List<Item> items;
@OneToMany(fetch=FetchType.EAGER)
public List<Item> getItems() {
return configurationItems;
}
}
每个项都包含对设备的反向引用:
class Item {
private Device;
@ManyToOne( cascade = {CascadeType.PERSIST, CascadeType.MERGE, CascadeType.REFRESH} )
public Device getDevice() {
return device;
}
}
我可以创建设备,添加项目和保存所有这些。I可以从DB中检索对象,并且除了对该项所保存的设备的引用之外,所有内容都在工作。
我如何阅读这些内容并不重要:
一。具有所有关联项的读取设备
2。读取项目
设备引用始终为空。我想我的注释“ManyToOne”有问题。
我使用hibernate和spring,通过子类HibernateDaoSupport实现DAO。
下面是检索所有项的代码示例:
getHibernateTemplate().loadAll(Item.class)