直接上菜:

dept.hbm.xml:关键点标蓝色这部分,inverse表示放弃维护外键关系,cascade就不用说了

<hibernate-mapping package="com.cissst.it.dept.entity">
<class name="Dept" table="DEPT1">
<id name="deptno" column="DEPTNO">
<generator class="native"></generator>
</id>
<property name="dname" column="DNAME"></property>
<set name="emps" inverse="true" cascade="save-update,delete">
<key column="deptno"></key>
<one-to-many class="com.cissst.it.emp.entity.Emp" />
</set>
</class>
</hibernate-mapping>

emp.hbm.xml

<hibernate-mapping package="com.cissst.it.emp.entity">
<class name="Emp" table="EMP1">
<id name="empno" column="EMPNO">
<generator class="native"></generator>
</id>
<property name="ename" column="ENAME"></property>
<property name="job" column="JOB"></property>
<many-to-one name="dept" class="com.cissst.it.dept.entity.Dept"/>
</class> </hibernate-mapping>

测试类:

    public static void main(String[] args) {
//级联保存
Session session = SessionUtil.openSession();
Transaction tx = session.getTransaction();
tx.begin();
Dept dept = new Dept();
dept.setDname("develop");
Emp emp1 = new Emp();
emp1.setEname("PECOOL");
emp1.setJob("CODE");
Emp emp2 = new Emp();
emp2.setEname("PHOEBE");
emp2.setJob("PHOTO");
HashSet<Emp> set = new HashSet<Emp>();
set.add(emp1);
set.add(emp2);
dept.setEmps(set);
session.save(dept);
tx.commit();
session.close();
}

result:

    只需要保存dept对象,dept中的emp对象也会得到保存,一般1方放弃维护外键关系有助于改善性能,发现sql中明显少了update语句。

最新文章

  1. Android--Intent(意图)
  2. ssh 发现了error while loading shared libraries这种错
  3. WCF服务配置编辑器使用
  4. Hibernae 的延迟加载
  5. ORACLE PL/SQL开发--bulk collect的用法 .
  6. lucene 查询+分页+排序
  7. html5学习(三)
  8. 开涛spring3(3.2) - DI之循环依赖
  9. 【HTML】谈谈html的meta标签
  10. shell解析命令行的过程以及eval命令
  11. CentOS系统中出现错误--SSH:connect to host centos-py port 22: Connection refused
  12. MVC autofac 属性注入
  13. [C# 基础知识系列]专题二:委托的本质论 (转载)
  14. bzoj 1452: [JSOI2009]Count (二维树状数组)
  15. Codeforces 746F Music in Car
  16. python安装scrapy等库需要c++ 14.0 下载链接放这里
  17. linux 正则表达式和通配符
  18. Unity3D Shader描边效果
  19. 【运维技术】Maven + Gogs + Nexus 实现版本管理 + 代码模块开发管理
  20. Linux下开发python django程序(Cookie读写)

热门文章

  1. 一些有趣的 js 包
  2. C#三层架构
  3. redis-server 使用
  4. 如何在nginx容器中使用ping、nslookup、ip、curl 等工具?
  5. windows常见软件库
  6. 雷林鹏分享:jQuery EasyUI 数据网格 - 扩展行显示细节
  7. pip3 freeze导出依赖包 --Python3
  8. 活动代码页437--修改windows的系统编码
  9. Matlab:导数边界值的有限元(Ritz)法
  10. mysql索引 -&gt;创建索引、修改索引、删除索引的命令语句