Hibernate学习21 -- 关联映射11 -- 复合主键映射(composite-id)
来源:互联网 发布:mac mount ntfs rw 编辑:程序博客网 时间:2024/05/17 22:03
通常将复合主键相关的属性,单独放到一个类中
* 此类必须实现序列化接口
* 覆写hashcode和equals方法
如果在表中有两个列合起来当主键怎么处理?强烈不建议使用这种方式。
l 编写一个类(实现序列化接口),封装主键,并写属性。例如:
public class CustomerPK implements Serializable{//主键类
private String account;
private String password;
public String getAccount() {
return account;
}
public void setAccount(String account) {
this.account = account;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
l Po内编写各个属性,包括主键类型。例如:
public class Customer{
private CustomerPK cpk;//主键类
private String cname;
private double cbalance;
public Customer(){}
public double getCbalance() {
return cbalance;
}
public void setCbalance(double cbalance) {
this.cbalance = cbalance;
}
public String getCname() {
return cname;
}
public void setCname(String cname) {
this.cname = cname;
}
public CustomerPK getCpk() {
return cpk;
}
public void setCpk(CustomerPK cpk) {
this.cpk = cpk;
}
}
l 在映射文件中申明复合主键。例如:
<?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="po.Customer" table="T_CUSTOMER">
<composite-id name="cpk" class="po.CustomerPK"> <!-- 复合主键 -->
<key-property name="account" column="ACCOUNT">
</key-property>
<key-property name="password" column="PASSWORD">
</key-property>
</composite-id>
<property name="cname" column="CNAME"/>
<property name="cbalance" column="CBALANCE"/>
</class>
</hibernate-mapping>
- Hibernate学习21 -- 关联映射11 -- 复合主键映射(composite-id)
- hibernate学习11之composite(复合)主键映射
- hibernate里联合主键composite-id映射
- hibernate中的关联映射图解 ---- 复合主键
- hibernate,复合主键,composite-id
- hibernate复合主键映射
- Hibernate复合主键映射
- Hibernate复合主键映射
- Hibernate复合主键映射
- Hibernate复合主键映射
- Hibernate复合主键映射
- Hibernate复合主键映射
- Hibernate复合主键映射
- Hibernate复合主键映射
- hibernate 复合主键映射
- Hibernate复合主键映射
- Hibernate复合主键映射
- Hibernate复合主键映射
- webgame开发简明教程
- mysql 复制记录
- 数据结构--顺序表的操作
- iPhone人机界面指南中的意见和建议摘录
- 【转】用C#实现Windows Mobile 发送短信的三种方法
- Hibernate学习21 -- 关联映射11 -- 复合主键映射(composite-id)
- 废话几句
- 钱是青春所无法驾驭的
- 我的编程在何时
- Hibernate学习22 -- 关联映射12 -- 集合映射
- 用java实现的迭代和递归插入排序
- Hibernate学习23 -- 关联映射13 -- 动态模式映射
- TMS320系列DSP芯片的命名方法
- 魔术的表演形式可从不同角度来划分