一对一
package com.lanou.hibernate.bean;
public class
User {
private
int id;
private
String username;
private
String pwd;
private
UserInfo userinfo;
public
int getId()
{
return
id;
}
public
void setId(int
id)
{
this.id
= id;
}
public
String getUsername()
{
return
username;
}
public
void setUsername(String
username)
{
this.username
= username;
}
public
String getPwd()
{
return
pwd;
}
public
void setPwd(String
pwd)
{
this.pwd
= pwd;
}
public
UserInfo getUserinfo()
{
return
userinfo;
}
public
void setUserinfo(UserInfo
userinfo)
{
this.userinfo
= userinfo;
}
@Override
public
String toString()
{
return
"User [id=" +
id +
", username=" +
username +
", pwd=" +
pwd +
", userinfo=" +
userinfo +
"]";
}
}
package com.lanou.hibernate.bean;
public class UserInfo {
private String id;
private String email;
private User user;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
}
<?xml version="1.0" encoding="WINDOWS-1251"?>
<!--
~ Hibernate, Relational Persistence for Idiomatic Java
~
~ License: GNU Lesser General Public License (LGPL), version 2.1 or later.
~ See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
-->
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="com.lanou.hibernate.bean.User" table="tb_user" >
<id name="id" >
<generator class="uuid2"></generator>
</id>
<property name="username"></property>
<property name="pwd"></property>
<one-to-one name="userinfo" class="com.lanou.hibernate.bean.UserInfo" cascade="all"></one-to-one>
</class>
</hibernate-mapping>
userinfo.hbm.xml
<?xml version="1.0" encoding="WINDOWS-1251"?>
<!--
~ Hibernate, Relational Persistence for Idiomatic Java
~
~ License: GNU Lesser General Public License (LGPL), version 2.1 or later.
~ See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
-->
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="com.lanou.hibernate.bean.UserInfo" table="tb_userinfo" >
<id name="id" >
<generator class="foreign">
<param name="property">user</param>
</generator>
</id>
<property name="email"></property>
<one-to-one name="user" class="com.lanou.hibernate.bean.User" cascade="all" constrained="true"></one-to-one>
</class>
</hibernate-mapping>