hibernate 映射无主键和复合主键的数据库表
来源:互联网 发布:淘宝店铺等级划分 编辑:程序博客网 时间:2024/06/05 17:57
hibernate 映射无主键和复合主键的数据库表
(1) 复合主键
通常将复合主键相关属性,单独抽取出来,建立一个独立的类
* 必须实现序列化接口
* 必须实现equals和hashcode方法
例如:一个表SYS_PERSON定义如下 firstname,lastname,age
其中主键是复合主键
(firstname+lastname)
1.单独为复合主键建立一个类NamePK.java,此类要序列化,且要实现equals和hashcode方法
此类中包含两个属性
private String firstname;
private String lastname;
2.再建立一个pojo类名为:Person.java。
注意此类中也有两个属性
private NamePK namePK;//这是复合主键的类对象
private int age;
3.在java中写查询时,可以如下:
Object[] params = {"刘","德华"};
ArrayList lists = (ArrayList)personDao.find("from Person ax where ax.namePK.firstname=? and ax.namePK.lastname=?",params); //注意要定义别名
4.在xml映射文件中
<hibernate-mapping>
<class
name="com.user.Person"
table="SYS_PERSON">
<!-- 复合主键 注意此复合主键的名字是Person定义的属性名 -->
<composite-id name="namePK">
<key-property name="firstname" column="FIRST_NAME"/>
<key-property name="lastname" column="LAST_NAME"/>
</composite-id>
<property name="age" column="AGE"/>
</class>
</hibernate-mapping>
- hibernate 映射无主键和复合主键的数据库表
- hibernate 映射无主键的数据库表
- hibernate中表的复合主键映射表
- Hibernate的复合主键映射
- Hibernate的复合主键映射
- Hibernate---->component映射和复合主键映射
- 【hibernate】--- 复合主键映射和Component映射
- hibernate复合主键映射
- Hibernate复合主键映射
- Hibernate复合主键映射
- Hibernate复合主键映射
- Hibernate复合主键映射
- Hibernate复合主键映射
- Hibernate复合主键映射
- Hibernate复合主键映射
- Hibernate复合主键映射
- hibernate 复合主键映射
- Hibernate复合主键映射
- 完美获取web工作区域高宽代码
- Squid代理服务器配置文档
- 互联网的“山寨文化”变成了恶性竞争!
- squid 高级的选项
- squid 资料
- hibernate 映射无主键和复合主键的数据库表
- google hack
- 关于EBoot和NBoot及.bin文件和.nb0文件的差别
- 有效睡眠
- vbscript中正则表达式相对perl的不同
- Professional Multicore Programming: Design and Implementation for C++ Developers
- 关键字变色控件
- Always Be Testing: The Complete Guide to Google Website Optimizer
- 拔下网下后,无法访问本地数据库