hibernate之多对一关联映射
来源:互联网 发布:连笔字签名设计软件 编辑:程序博客网 时间:2024/05/17 08:09
many-to-one 多对一关联映射
Student - Class 多个学生属于一个班
public class Class {
private String id;
private String name;
........
}
public class Student{
private String id;
private String name;
........
private Class class;
.........
}
Student.hbm.xml(学生映射文件) 如下:
........
<id name="id">
<generator class="native" />
</id>
<property name="name" />
<money-to-one name="class" column="classid" />
.........
在多的一端加一个字段 class,用 column 重命名为classid。classid 作为外键指向Class端。
需要注意的是:save 时,先session.save(class),不然会报错(save(Student)时会查找classid的值,没有分配class,classid值不存在,就会报TransientObjectException),所以要先分配了Class
如果想偷懒的话,只要添加一个cascade属性,如下
<money-to-one name="class" column="classid" cascade="all"/>就可以自动save class,不会抛异常
cascade可以取得值:all none sava-update delete
all代表在所有情况下都执行级联操作
none在所有情况下都不执行级联操作
sava-update保存和更新的时候执行级联操作
delete删除的时候执行级联操作
(级联:对象的连锁操作)
个人还是喜欢手动save ,清晰直观 加载(load)的时候,从student加载class,OK,没有问题
- Hibernate映射之多对一关联映射
- hibernate之多对一关联映射
- 【Hibernate步步为营】--关联映射之多对一
- 【Hibernate步步为营】--关联映射之多对一
- Hibernate关联映射之多对一单向关联映射
- Hibernate 关联映射 之多对一关联(一)
- hibernate关联映射之多对一单向关联
- Hibernate关联映射之多对一、一对一映射
- 【HIbernate】(五)关联映射之多对一映射
- 【HIbernate】(五)关联映射之多对一映射
- 关联映射之多对一
- Hibernate(2)关联映射之多对一
- 【Hibernate系列】(五):关联映射之多对一
- Hibernate关联映射之多对一/一对多双向关联映射
- Hibernate关联映射之多对多
- Hibernate关联映射之多对多单/双向关联映射
- 06-MyBatis_关联映射之多对一
- Hibernate 关联映射 之多对一关联(二) 懒加载
- 新家第一笔
- [转] 在路上----做人的十句经典话语!
- reactos操作系统实现(123)
- OpenCV源码阅读(1)
- 几种常用排序法
- hibernate之多对一关联映射
- TweenLite&&TweenMax系列(二)
- 我的三个缺点及改正
- java tomcat配置
- Delphi的TThread类
- X的意思
- [从jQuery看JavaScript]-匿名函数与闭包(Anonymous Function and Closure)
- 预编译头文件
- 批处理命令