- 1
- 0
- 约1.39千字
- 约 6页
- 2017-02-13 发布于江苏
- 举报
Hibernate总结
单向一对多的关系
步骤:例如(Groups表(1),User表(n))
修改Groups实体类中属性,把User表放在一个List集合中作为Groups表中的属性。
修改Groups.hbm.xml配置
注意:name=”userList”:指定的的属性为Groups类中定义的userList属性,
Table=”User”:指定的属性为Groups类中ListUser属性里面的User,
Lazy=”false”:指定需要延迟加载,默认为true,
Column=”GROUPS”:指定的属性表的外键属性,
编写Groups的DAO方法
单向多对一的方法
步骤:例如(Groups表(1),User表(n))
修改User实体类中的属性,需要把原来的groups属性修改为Groups类
修改User.hbm.xml配置
编写User的DAO方法
一对一主键关联的配置方法
步骤(例如:USER_INFO表和USER_INFO2表)
修改UserInfo实体类的属性,将UserInfo2放在UserInfo中做属性
修改UserInfo2实体类的属性,将UserInfo放在UserInfo2中做属性
修改UserInfo.hbm.xml配置
注意:name=”UserInfo2”:指定的属性为UserInfo实体类中userInfo2的属性,
Cascade=”all”:指定的属性为级联,all代表执行任何操作(insert/update/delete….)
修改UserInfo2.hbm.xml配置
注意还需要修改:
编写UserInfo的DAO方法
一对一外键关联的配置方法
步骤(例如:USER_INFO表和USER_INFO2表)
修改UserInfo和UserInfo2实体类(和一对一主键关联相同)
修改UserInfo.hbm.xml配置
注意:name=”UserInfo2”:指定的属性表示相关联的另一张表的属性
Column=”ID”:指定的属性是当前配置文件表的主键
Unique=”true”:指定的属性为true,无法进行级联插入,同时还需将
Insert和update两个属性都设置为false。
编写UserInfo的DAO方法
多对多关联的配置方法
步骤(例如:Role表和EMP表;由于是多对多所以需要第三张表R_ROLE_EMP)
修改ROLE表的实体类和EMP表的实体类
ROLE表实体类的修改
EMP表实体类的修改
修改Role.hbm.xml配置
注意:name=”empList”:指定的属性ROLE实体类中ListEmp的属性
Table=”R_ROLE_EMP”:指定的属性第三张表
Key标签中的Column=”R_ROLE_ID”:指定的属性为当前实体类在第三张表中的属性
many-to-many标签中的column=”R_EMP_ID”:指定的属性为另一张表在第三张表中的属性
修改EMP.hbm.xml配置
编写EMP的DAO方法
编写ROLE的DAO方法
原创力文档

文档评论(0)