Hibernate 一对一,一对多关系
来源:互联网 发布:js 重新打开一个页面 编辑:程序博客网 时间:2024/05/17 08:45
1. Hibernate Annotation关系映射有下面几种类型:
1)一对一外键关联映射(单向)
2)一对一外键关联映射(双向)
3)一对一主键关联映射(不重要)在这不演示
在实际中很少用,使用注解@PrimaryKeyJoinColumn
意思是说,我的主键去参考另外一张表中的主键,作为我的主键,但是在我测试使用
注解一对一主键关联映射,在生成表的时候,数据库中并没有生成关联,使用XML
映射可以生成。Annotation注解一对一主键关联映,有些bug。不过没空去研究它。
因为在实际开发中一对一很少用。在实际开发中我机会没有用过,主键关联就更少了
4)多对一关联映射
5)一对多关联映射(单向)
6)一对多关联映射(双向)
7)多对多关联映射(单向)
8)多对多关联映射(双向)
2.介绍各种映射用法
1)一对一外键关联映射(单向)
@OneToOne(cascade=CascadeType.ALL)
@JoinColumn(name="userid",unique=true)
//一对一外键关联,使用@OneToOne,并设置了级联操作
//@JoinColum设置了外键的名称为userid(数据库字段名),如果不设置,则默认为另一类的属性名+ _id
2)一对一外键关联映射(双向)
Class1里与上面一样,
@OneToOne(mappedBy="class2",cascade=CascadeType.ALL)
//一对一双向关联关系,使用@OneToOne
//注意:需要加上mappedBy="class2",如果不加上的话,
//Class2也会生成一个外键(class1_id)
//mappedby="class2"需要指向与他关联对象的一个属性
//说明双向关联关系中,有且仅有一端是作为主体(owner)端存在的
//主体端负责维护联接列
//对于不需要维护这种关系的从表则通过mappedBy属性进行声明
//mappedBy的值指向主体的关联属性
//规律:只有是双向关联关系,都加上mappedby
4)多对一关联映射
在多的一端配置:
@ManyToOne(targetEntity=Organization.class)
@JoinColumn(name="orgid")
//多对一注解@ManyToOne
//targetEntity指定了关联对象
//@JoinColumn(name="orgid")指定生产的外键的字段名,默认是org_id
5)一对多关联映射(单向)
@OneToMany
@JoinColumn(name="orgid")
6)一对多关联映射(双向)
一端:
@OneToMany(mappedBy="org")
@JoinColumn(name="orgid")
多端:
@ManyToOne
@JoinColumn(name="orgid")
7)多对多关联映射(单向)
@ManyToMany
@JoinTable(name="t_u_r",
joinColumns={@JoinColumn(name="u_id")},
inverseJoinColumns={@JoinColumn(name="r_id")}
)
8)多对多关联映射(双向)
@ManyToMany
@JoinTable(name="t_u_r",
joinColumns={@JoinColumn(name="u_id")},
inverseJoinColumns={@JoinColumn(name="r_id")}
)
Role端
@ManyToMany(mappedBy="role")
- Hibernate 一对一,一对多关系
- Hibernate 关系配置(一对一,一对多)
- Hibernate双向一对一,一对多,多对多关系映射
- Hibernate 关系映射 (一对一,一对多,多对多)
- hibernate关联关系配置(一对一,一对多,多对多)
- Hibernate关联关系配置(一对一,一对多,多对多)
- 3、Hibernate一对一、一对多、多对多对应关系
- Hibernate关联关系映射 一对一 一对多 多对一
- Hibernate中一对一以及一对多之间的关系
- Hibernate 关系映射案例(一对一关系,一对多关系,多对多关系)
- hibernate 一对多,一对一小结
- Hibernate 基于注解的方式 实现的关系映射案例(一对一关系,一对多关系,多对多关系)
- 一对一,一对多,多对多,关系
- 关系:一对一、一对多,多对多。
- grails的一对一、一对多关系
- Hibernate一对多,多对一,多对多,一对一关系汇总
- hibernate 笔记001---一对多,多对一,多对多,一对一关系汇总
- Hibernate中的一对多,多对一,多对多,一对一关系
- iOS----关于UIView的autoresizingMask属性的研究
- WebBrowser页面与WinForm交互技巧
- TextView部分字体变红
- Spark 读取HDFS文件
- Linux 静态库与动态库搜索路径设置
- Hibernate 一对一,一对多关系
- 程序猿解读巴西世界杯
- Swift语言官方文档翻译(3)-The Basics
- linux下导入、导出mysql数据库命令
- J2EE之验证码实现
- C# - 反射
- 异常以及异常处理框架探析
- HDU 1079 Calendar Game (博弈论-sg)
- OpenCV GUI Error Handler