表结构
父表 sheme
子表 sheme_item 在映射文件里 sheme.java 中有 private List<SchemeItem> schemeItems;
子表与父表是N对1关系 ,并且无不关联的记录为什么用关于getHibernateTemplate().loadAll(sheme.class) 在schemeItems会有NULL
父表 sheme
子表 sheme_item 在映射文件里 sheme.java 中有 private List<SchemeItem> schemeItems;
子表与父表是N对1关系 ,并且无不关联的记录为什么用关于getHibernateTemplate().loadAll(sheme.class) 在schemeItems会有NULL
父中没有子 那么得到记录 schemeItems就应该是 null
如果没有建立,当主表被删除后,剩下子表,那么子表的这个schemeItems可以插入null这种设计表的结构时最好做约束,否则表中会存在非法数据
<column name="PARENT_ID" not-null="false">
<comment>上级方案</comment>
</column>
</many-to-one>
<set lazy="false" inverse="false" cascade="all" order-by="SITUATION, ORDER_NO" name="children">
<key column="PARENT_ID"/>
<one-to-many class="com.auxgroup.sxamr.model.domain.Scheme"/>
</set>
<list table="SCHEME_ITEM" lazy="false" inverse="false" cascade="all" name="schemeItems">
<key column="SCHEME_ID" not-null="true"/>
<list-index column="RANK"/>
<one-to-many class="com.auxgroup.sxamr.model.domain.SchemeItem"/>
</list>
XML里是这么写的