日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
描述Hibernate映射文件

在向大家詳細(xì)介紹Hibernate之前,首先讓大家了解下調(diào)用JPA的代碼和調(diào)用Hibernate的代碼,然后全面介紹Hibernate映射文件。

由于JPA是不需要配置的,代碼里面已經(jīng)包括了注釋,所以下面附上Hibernate映射文件,為了使數(shù)據(jù)庫里面更清楚一些,所以兩者使用的表不是同一張表,JPA的表是帶JPA前綴的,用@Table這個注釋聲明了這一點。

 
 
 
  1.  version="1.0" encoding="UTF-8"?> 
  2.  
  3. "-//Hibernate/Hibernate Mapping DTD 3.0//EN"  
  4. "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> 
  5.  package="com.hadeslee.jpaentity"> 
  6.  name="Department" table="Department"> 
  7.  name="id" column="departId" type="long"> 
  8.  class="native"/> 
  9.  
  10.  name="deptName"/> 
  11.  name="description"/> 
  12.  name="persons"> 
  13.  column="deptId"/> 
  14.  class="Person"/> 
  15.  
  16.  
  17.  name="Person" table="Person"> 
  18.  name="id" column="personId" type="long"> 
  19.  class="native"/> 
  20.  
  21.  name="name"/> 
  22.  name="age"/> 
  23.  name="department" column="deptId" class="Department"/> 
  24.   
  25.  

調(diào)用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(); 

調(diào)用Hibernate的代碼如下:

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

***發(fā)現(xiàn)是JPA是不能刪除的,而Hibernate這邊的調(diào)用可以刪除,一開始我還以為是toplink的實現(xiàn)問題,后來特意把實現(xiàn)改成Hibernate的實現(xiàn),也同樣。所以有可能是JPA的要求必須得這樣做,不能替我們自動完成一些東西,是利于安全。這可能就是標(biāo)準(zhǔn)和流行的差別吧。以上介紹Hibernate映射文件。


當(dāng)前標(biāo)題:描述Hibernate映射文件
文章路徑:http://www.5511xx.com/article/ccochdj.html