hibernate中的复合主键的映射
2011-12-26 13:55
155 查看
复合主键映射
使用<composite-id>节点来映射:
Ø 持久化类User:
Ø 映射配置User.hbm.xml:
Ø 基于主键类的复合主键
持久化类:Users2.java
主键类UserPk.java
映射文件:User2.hbm.xml
使用<composite-id>节点来映射:
Ø 持久化类User:
package pojo; import java.io.Serializable; public class User implements Serializable { private static final long serialVersionUID = 1L; private String firstName; private String lastName; private int age; public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } } |
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="pojo.User" table="T_User"> <!-- 配置复合主键 --> <composite-id> <key-property name="firstName" column="firstName" length="50" type="java.lang.String" /> <key-property name="lastName" column="lastName" length="50" type="java.lang.String" /> </composite-id> <property name="age" column="age" type="java.lang.Integer" /> </class> </hibernate-mapping> |
持久化类:Users2.java
package pojo; import java.io.Serializable; public class User2 implements Serializable { private UserPk userpk; public UserPk getUserpk() { return userpk; } public void setUserpk(UserPk userpk) { this.userpk = userpk; } public int getAge() { return age; } @Override public boolean equals(Object obj) { // TODO Auto-generated method stub return super.equals(obj); } @Override public int hashCode() { // TODO Auto-generated method stub return super.hashCode(); } public void setAge(int age) { this.age = age; } private int age; } |
package pojo; import java.io.Serializable; public class UserPk implements Serializable { private String firstName; private String lastName; public String getFirstName() { return firstName; } @Override public boolean equals(Object obj) { // TODO Auto-generated method stub return super.equals(obj); } @Override public int hashCode() { // TODO Auto-generated method stub return super.hashCode(); } public void setFirstName(String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } } |
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="pojo.User2" table="T_User2"> <!-- 配置复合主键 --> <composite-id name="userpk" class="pojo.UserPk"> <key-property name="firstName" column="firstName" length="50" type="java.lang.String" /> <key-property name="lastName" column="lastName" length="50" type="java.lang.String" /> </composite-id> <property name="age" column="age" type="java.lang.Integer" /> </class> </hibernate-mapping> |
相关文章推荐
- hibernate整合遗留数据库之处理主键(映射自然键之非复合自然键)
- hibernate中表的复合主键映射表
- 步步为营Hibernate全攻略(四)剪不断理还乱之:复合主键 && 组合映射
- Hibernate的复合主键映射
- Hibernate之复合主键映射
- Hibernate学习21 -- 关联映射11 -- 复合主键映射(composite-id)
- Java的Hibernate框架中复合主键映射的创建和使用教程
- Hibernate中复合主键映射
- Hibernate的关联映射---6.1.9: 基于复合主键的关联关系
- 【Hibernate】(十)其他映射:复合主键映射+Component映射+集合映射
- hibernate整合遗留数据库之处理主键(映射自然键之复合自然键)
- Java程序员从笨鸟到菜鸟之(六十)细谈Hibernate(十一)hibernate复合主键映射
- hibernate复合主键映射
- Hibernate的关联映射---6.1.10: 复合主键的成员属性为关联实体
- 步步为营Hibernate全攻略(四)剪不断理还乱之:复合主键 && 组合映射
- SSH:Hibernate框架(Hibernate复合主键映射)
- Hibernate中的复合主键映射
- Hibernate复合主键映射
- Java程序员从笨鸟到菜鸟之(六十)细谈Hibernate(十一)hibernate复合主键映射
- 【Hibernate步步为营】--复合主键映射详解