中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Hibernate如何映射文件

發布時間:2021-12-05 15:16:13 來源:億速云 閱讀:220 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關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如何映射文件”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

门头沟区| 玉门市| 潼关县| 双流县| 方山县| 汉川市| 濉溪县| 灯塔市| 萨迦县| 平武县| 乌拉特后旗| 甘泉县| 奎屯市| 东明县| 余干县| 许昌县| 鄂托克旗| 唐河县| 绵竹市| 剑川县| 陆良县| 达州市| 资阳市| 绥滨县| 益阳市| 永康市| 榆林市| 永修县| 板桥市| 旌德县| 新龙县| 琼中| 伊春市| 衡东县| 木兰县| 高陵县| 磴口县| 资溪县| 修武县| 衡山县| 鄂州市|