Hibernate如何映射文件

这篇文章给大家分享的是有关Hibernate如何映射文件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

网站建设哪家好,找成都创新互联!专注于网页设计、网站建设、微信开发、小程序设计、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了辽阳免费建站欢迎大家使用!

由于JPA是不需要配置的,代码里面已经包括了注释,所以下面附上Hibernate映射文件,为了使数据库里面更清楚一些,所以两者使用的表不是同一张表,JPA的表是带JPA前缀的,用@Table这个注释声明了这一点。

<?xml version="1.0" encoding="UTF-8"?>  <!DOCTYPE hibernate-mapping PUBLIC  "-//Hibernate/Hibernate Mapping DTD 3.0//EN"  "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="com.hadeslee.jpaentity"> <class name="Department" table="Department"> <id name="id" column="departId" type="long"> <generator class="native"/> </id> <property name="deptName"/> <property name="description"/> <set name="persons"> <key column="deptId"/> <one-to-many class="Person"/> </set> </class> <class name="Person" table="Person"> <id name="id" column="personId" type="long"> <generator class="native"/> </id> <property name="name"/> <property name="age"/> <many-to-one name="department" column="deptId" class="Department"/>  </class> </hibernate-mapping>

调用JPA的代码如下:

  1. EntityManagerFactory emf = Persistence.createEntityManagerFactory("TestSSH1PU2");  

  2. EntityManager em = emf.createEntityManager();  

  3. em.getTransaction().begin();  

  4. com.hadeslee.jpaentity.Person p = new com.hadeslee.jpaentity.Person();  

  5. p.setAge(26);  

  6. p.setName("千里冰封");  

  7.  

  8. com.hadeslee.jpaentity.Department dept = em.find
    (com.hadeslee.jpaentity.Department.class, Long.valueOf("3"));  

  9. System.out.println("找到的dept=" + dept);  

  10. em.remove(dept);  

  11. em.getTransaction().commit(); 

调用Hibernate的代码如下:

Session session = HibernateUtil.getSessionFactory().getCurrentSession();  session.getTransaction().begin();  Department dept = (Department) session.load(Department.class, 2);  session.delete(dept);  session.getTransaction().commit();

***发现是JPA是不能删除的,而Hibernate这边的调用可以删除,一开始我还以为是toplink的实现问题,后来特意把实现改成Hibernate的实现,也同样。所以有可能是JPA的要求必须得这样做,不能替我们自动完成一些东西,是利于安全。这可能就是标准和流行的差别吧。

感谢各位的阅读!关于“Hibernate如何映射文件”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

网页题目:Hibernate如何映射文件
本文网址:https://www.cdcxhl.com/article10/ijesdo.html

成都网站建设公司_创新互联,为您提供网站设计搜索引擎优化网站策划ChatGPT域名注册商城网站

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

外贸网站建设