首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

hibernate多对一联系关系映射配置

2013-03-21 
hibernate多对一关联映射配置多对一关联映射。多的一端会作为外键参照一的一端。在多的一端映射文件里要加入

hibernate多对一关联映射配置
多对一关联映射。多的一端会作为外键参照一的一端。在多的一端映射文件里要加入many-to-one标签。用户,属于多的一端。组,属于一的一端。

public class Many2OneTest extends TestCase {

public void testSave1() {
Session session = null;
try {
session = HibernateUtils.getSession();
session.beginTransaction();

Group group = new Group();
group.setName("滴答滴");

User user1 = new User();
user1.setName("房东");
user1.setGroup(group);

User user2 = new User();
user2.setName("地方");
user2.setGroup(group);

//不能成功保存,抛出TransientObjectException异常
//因为Group为Transient状态,oid没有分配值
//persistent状态的对象是不能引用transient状态的对象的
session.save(user1);
session.save(user2);
session.getTransaction().commit();
}catch(Exception e) {
e.printStackTrace();
session.getTransaction().rollback();
}finally {
HibernateUtils.closeSession(session);
}
}

以上代码需要按顺序保存,有一定的束缚。为了避免这样的限制,可以在多的一端(用户)的many-to-one标签加入cascade属性,即级联更新保存。对于加载时可以不用级联这一个属性

热点排行