在前面学习了基于配置文件的多对一关系,而在实际的开发过程中我们更多的是使用注解去开发。在这里来简单学习一下基于注解的多对一关系。
1. 创建所需要的实体
注:这里需要特别注意的是,如果使用的是mysql的数据库的话使用id自增长是没有问题,但是如果使用的是oracle数据库的话就需要使用到oracle的序列sequence,在文档中式这样写的。
sequence调用谨慎数据库的序列来生成主键,要设定序列名,不然hibernate无法找到。
列如:
2.在多对端设置映射
在多对端加入字段,设置关联映射:
3.在hibernate.cfg.xml中加入映射的类
4.生成表
sql语句:
5.保存数据
sql语句:
发现是2条insert语句,说明插入成功。
6.双向多对一
如果是双向的多对一则需要在Categroy中加入hashSet
注:需要注意的是在加入OneToMany时需要指定由那张表去管理关系,一般为多端的属性,否则会多出一张关联映射表。
注:本文是在学习期间根据网上视频写的学习笔记,如有侵权请联系删除!