一对多,一端设置:

  <set name="TWorkorderHistories" inverse="true" cascade="all">

一)保存级联

  问题:

    一方主键数据库中没有,先保存多方时,回报引用暂时态对象错误,

  分析:

    先不关联多方地保存一方,

  解决:

    假设一方A,多方B

    1)B.setA(A);

    2)A.getSetB().add(B);

    3)session.save(A);

  或:

 1 // 插入记录
 2         session.saveOrUpdate(workorder);
 3         tr.commit();
 4         session.close();
 5         
 6         session = hibernateDao.getHSession();
 7         tr = session.beginTransaction();
 8         // 添加工单历史
 9         TWorkorderHistory tWorkorderHistory = new TWorkorderHistory(workorder,
10                 pureUser, 1L, new Timestamp(new Date().getTime()), Short
11                         .parseShort("0"));
12 
13         session.saveOrUpdate(tWorkorderHistory);
14         workorder.getTWorkorderHistories().add(tWorkorderHistory);
15 
16         // 插入记录
17         tr.commit();
18         session.close();
保存级联

相关文章: