在一对多或多对多的映射配置中,inverse、cascade、order-by属性配置
- inverse属性
inverses:作用是指定双向多对一的映射中,由哪一端来进行维护默认值为inverse=”false”,表示不放弃维护 ,inverse=”true”表示放弃维护,一般在一的一方设置为inverse=”true”,来减少程序对数据的访问<set name=”students” table=”students” inverse=”true” >
<key>
<!– 此处值为 students表中的外键 –>
<column name=”tec_id” />
</key>
<one-to-many class=”Student” />
</set> - cascade属性
我们以学生和老为例,一个老师对应多个学生,多个学生对应一个老师的多对一关系,如果我们在一的老师这边设置了cascade=”delete”,那么在删降老师的记录时,会先将与之相关联的学生全部删除。<set name=”students” table=”students” cascade=”delete” >
<key>
<!– 此处值为 students表中的外键 –>
<column name=”tec_id” />
</key>
<one-to-many class=”Student” />
</set>
可参考
Hibernate框架基础——cascade属性_李阿昀的博客-CSDN博客_cascade属性 - order-by
order-by:设置查询出来的数据的排序,实质就是在sql语句后面加上order by语句。如:
<set name=”students” table=”students” inverse=”true” lazy=”false” order-by=”id ASC”>
<key>
<!– 此处值为 students表中的外键 –>
<column name=”tec_id” />
</key>
<one-to-many class=”Student” />
</set>
如上所示id为该Student类的id属性,也可以换在这个类的其它属性,ASC为升序 ,如果设成DESC则为降序
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/71207.html