Hibernate一对一关系的维护

开发 后端
Hibernate的一对一关系的两种维护,一是主键关联,另一个是唯一外键关联。

一对一关系的维护有两种,分为主键关联和***外键关联,下面的代码展示Hibernate一对一关系中的主键双向关联。

主键关联:(双向)

(主控方)
Person.java
Person {
private String username;
//对被控方的引用
private Address address;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public Address getAddress() {
return address;
}
public void setAddress(Address address) {
this.address= address;
}
}

(被动方)
Address.java
Address{
private String addressName;
//对主控方的引用
private Person person;
public String getAddressName() {
return addressName;
}
public void setAddressName(String addressName) {
this.addressName= addressName;
}
public Person getPerson() {
return person;
}
public void setPerson(Person person) {
this.person= person;
}
public String toString() {
return new ToStringBuilder(this).
append("addressName", addressName).
toString();
}
public boolean equals(Object o) {
if ( !(o instanceof Address) {
return false;
}
Address rhs = (Address) o;
return new EqualsBuilder()
.appendSuper(super.equals(o))
.append(this.addressName, rhs.getAddressName())
.isEquals();
}
public int hashCode() {
return new HashCodeBuilder(17, 37).
append(addressName).
toHashCode();
}
}

mapping 文件





name="address"
class="Address"
cascade="all"
constrained="false"
/>




person




【编辑推荐】

  1. Hibernate的两种配置文件格式
  2. 解析Hibernate中的事务管理
  3. 解析Hibernate的批量删除功能
  4. Hibernate、Spring和Struts工作原理及使用理由
责任编辑:张攀 来源: 教程在线
相关推荐

2009-06-03 16:18:16

Hibernate关系代码实例

2009-06-04 16:14:22

Hibernate一对Hibernate一对Hibernate多对

2012-03-21 11:43:41

JavaHibernate

2009-06-04 10:34:19

Hibernate一对一对多关系配置

2012-02-08 13:34:08

HibernateJava

2009-09-22 09:55:58

Hibernate实例

2009-08-17 10:34:51

NHibernate一

2009-06-26 10:15:54

面试HR

2010-04-15 09:09:02

Hibernate

2012-03-13 16:29:54

Between情侣移动应用

2009-09-23 10:37:50

Hibernate一对

2009-12-23 09:31:11

宽带路由上网故障

2009-06-24 15:49:54

Entity Bean一对一映射

2009-09-23 10:57:02

Hibernate一对

2013-10-12 16:41:01

微软微软CEO鲍尔默

2009-10-22 18:24:35

数字化教学教育

2012-12-14 09:54:31

英特尔数字化学习年会

2015-07-30 13:08:56

英特尔一对一数字化学习

2012-02-03 10:54:50

HibernateJava

2021-09-17 18:00:47

腾讯微信移动应用
点赞
收藏

51CTO技术栈公众号