hibernate组件作为复合主键
2016-06-25 16:14
411 查看
hibernate组件作为复合主键
package com.xueyoucto.xueyou; import java.io.Serializable; /** * Created by Administrator on 2016/6/25. */ public class MulKey implements Serializable { private String firstkey; private String lastkey; public MulKey(String firstkey, String lastkey) { this.firstkey = firstkey; this.lastkey = lastkey; } public MulKey() { } public String getFirstkey() { return firstkey; } public void setFirstkey(String firstkey) { this.firstkey = firstkey; } public String getLastkey() { return lastkey; } public void setLastkey(String lastkey) { this.lastkey = lastkey; } @Override public boolean equals(Object obj) { if(this == obj){ return true; } if(obj != null && obj.getClass() == MulKey.class){ MulKey target = (MulKey)obj; return target.getFirstkey().equals(getFirstkey()) && target.getLastkey().equals(getLastkey()); } return false; } @Override public int hashCode() { return getFirstkey().hashCode() * 31 + getLastkey().hashCode(); } }
package com.xueyoucto.xueyou; import javax.persistence.*; /** * Created by Administrator on 2016/6/25. */ @Entity @Table(name = "hh_multientity") public class MultiEntity { @EmbeddedId @AttributeOverrides({ @AttributeOverride(name = "firstkey",column = @Column(name = "multientity_first")), @AttributeOverride(name = "lastkey",column = @Column(name = "multientity_last")), }) private MulKey mulkey; private int age; public MulKey getMulkey() { return mulkey; } public void setMulkey(MulKey mulkey) { this.mulkey = mulkey; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
MultiEntity m = new MultiEntity(); m.setAge(12); m.setMulkey(new MulKey("xxx","yy")); session.save(m);
数据库中的结果:
相关文章推荐
- Django 之管理界面
- 面向对象的设计原则第二篇:我无懈可击,我是英雄!颤抖吧妖魔们
- DELPHI版传奇引擎学习菜鸟篇(applem2)-01
- HDU 2089 不要62(数位DP)
- 求1+2+3+...+n
- 将二叉搜索树转成要一个排序的双向链表
- Muduo:EventLoop“循环”什么?
- js中的事件委托或是事件代理详解
- demo: 全页面CSS3动画的一个参考例子
- 纯MarkDown博客阅读体验优化
- C Language Examples of IPv4 and IPv6 Raw Sockets for Linux
- mysql 操作
- Linux学习之用户管理命令
- openstack on centos 7.1(dashboard)
- 忘记apple id如何更新应用?
- Jquery 特效_JS代码_JS广告代码_下拉菜单代码-懒人建站 http://www.51xuediannao.com/
- PXC 5.6安装搭建和高可用测试
- ScrollView上的图片缩放
- 备份Ubuntu 并制作成iso安装文件
- javaScript学习基础篇(1)(数组)