hibernate一对多、一对一、多对多映射之annotation篇

hibernate一对多、一对一、多对多映射之annotation篇

ID:34041779

大小:49.50 KB

页数:5页

时间:2019-03-03

hibernate一对多、一对一、多对多映射之annotation篇_第1页
hibernate一对多、一对一、多对多映射之annotation篇_第2页
hibernate一对多、一对一、多对多映射之annotation篇_第3页
hibernate一对多、一对一、多对多映射之annotation篇_第4页
hibernate一对多、一对一、多对多映射之annotation篇_第5页
资源描述:

《hibernate一对多、一对一、多对多映射之annotation篇》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Annotation注解可以放在属性所在行的上方,也可放在对应的属性的get方法的上方一、一对多/多对一1.确定谁是一方,谁是多方。2.po代码一方po有set<多方类型>的属性,部分关键代码Department:@Id@SequenceGenerator(name="seqDept",sequenceName="seq_t_department")@GeneratedValue(generator="seqDept")@Column(name="dept_id")privateIntegerdeptId;/***

2、anyclass>*///mappedBy必须写:值是对方中本方类型的属性名inverse:放弃//维护外键不让系统自动生成中间表//,fetch=FetchType.EAGER不懒加载FetchType.LAZY懒加载@OneToMany(mappedBy="department")privateSetempSet;多方po有一方类型的属性,部分关键代码Employee:@Id@SequenceGenerator(name="seqEmp",sequenceName="seq_t_employee")@GeneratedValue(generato

3、r="seqEmp")@Column(name="emp_Id")privateIntegerempId;/****/////,cascade=CascadeType.ALL@ManyToOne@JoinColumn(name="dept_id")privateDepartmentdepartment;二、一对一1外键关联:一对多的基础上在外键字段上加个唯一约束构成1对1的关系。1.1确定谁是一方,谁是多方。因为是一对一的关系,所以任何一方是一方或多方都可以2.1po双方各有一个对方类型的属性,部分代码一方Address:@

4、Id@SequenceGenerator(name="seqAddr",sequenceName="seq_t_address")@GeneratedValue(generator="seqAddr")@Column(name="dept_id")privateIntegeraddrId;@OneToOne(mappedBy="address")privateCompanycompany;多方Company:@Id@SequenceGenerator(name="seqCompany",sequenceName="seq_t_company")@GeneratedValue(gen

5、erator="seqCompany")@Column(name="company_id")privateIntegercompanyId;@ManyToOne@JoinColumn(name="addr_id",unique=true)privateAddressaddress;2.主键关联:双方一对一关系的数据保证主键值一致即可2.1都是一方2.2po:双方各有一个对方类型的属性,并且生成的两个表主键值相同Po中部分代码:下边是注解书写的另外一种形式Male:privateIntegermarriageId;privateIntegermaleId;privateFemalef

6、emale;@Id@SequenceGenerator(name="seqMale",sequenceName="seq_t_male")@GeneratedValue(generator="seqMale")@Column(name="marriage_Id")publicIntegergetMarriageId(){returnmarriageId;}@OneToOne(cascade=CascadeType.ALL)@PrimaryKeyJoinColumnpublicFemalegetFemale(){returnfemale;}Female:privateIntegerm

7、arriageId;privateIntegerfemaleId;privateMalemale;/***male*/@Id@GenericGenerator(name="seqFemale",strategy="foreign",parameters={@Parameter(name="property",value=

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。