真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

*.hbm.xml文件——單表映射、雙向多對一以及多對多的配置

這是單表映射的配置:

創(chuàng)新互聯(lián)專注于成都網(wǎng)站設(shè)計、成都網(wǎng)站制作、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計、網(wǎng)站制作、網(wǎng)站開發(fā)。公司秉持“客戶至上,用心服務(wù)”的宗旨,從客戶的利益和觀點出發(fā),讓客戶在網(wǎng)絡(luò)營銷中找到自己的駐足之地。尊重和關(guān)懷每一位客戶,用嚴(yán)謹(jǐn)?shù)膽B(tài)度對待客戶,用專業(yè)的服務(wù)創(chuàng)造價值,成為客戶值得信賴的朋友,為客戶解除后顧之憂。

Student.hbm.xml





    
        
            
            
        
        
            
        
        
            
        
        
            
        
        
            
        
    

配置雙向一對多或者雙向多對一的配置:

Grade.hbm.cml





	
		
			
		
		
			
		
		
			
		
			 
		
			 
			
			
		 
	

Student.hbm.xml





	
		
			
		
		
			
		
		
			
		
		
		
	

配置多對多關(guān)聯(lián)關(guān)系的配置,數(shù)據(jù)庫中有三個表project,employee,proemp(關(guān)聯(lián)表)

Project.hbm.xml





	
		
			
		
		
			
		
		
		
			
			
		
		
	

Employee.hbm.xml





	
		
			
		
		
			
		
		
		
		
			
			
		
	
/*
 * 多對多關(guān)聯(lián)關(guān)系的配置
 * 同時建立了Project到Employee之間的雙向關(guān)聯(lián)關(guān)系
 * 關(guān)聯(lián)關(guān)系的維護由Project方來處理(在Employee.hbm.xml中的屬性中設(shè)置inverse="true")
 *  并且在保存Project對象時會一并保存Employee對象
 */

Hibernate的Generator屬性有7種class,本文簡略描述了這7種class的意義和用法。

1、identity:用于MySQL數(shù)據(jù)庫。特點:遞增

< id name="id" column="id">
    < generator class="identity"/>
< /id>

注:對于MySql數(shù)據(jù)庫使用遞增序列時需要在建表時對主鍵指定為auto_increment屬性。

2、sequence:用于Oracle數(shù)據(jù)庫

< id name="id" column="id">
   < generator class="sequence">
     < param name="sequence">序列名< /param>
   < /generator>
< /id>

3、native:跨數(shù)據(jù)庫時使用,由底層方言產(chǎn)生。

Default.sequence為hibernate_sequence

< id name="id" column="id">
   < generator class="native"/>
< /id>

注:使用native時Hibernate默認(rèn)會去查找Oracle中的hibernate_sequence序列。

如果數(shù)據(jù)庫中沒有該序列,連接數(shù)據(jù)庫時會報錯。

4、hilo:通過高低位合成id,先建表hi_value,再建列next_value。必須要有初始值。

< id name="id" column="id">
    < generator class="hilo">
      < param name="table">high_val< /param>
       < param name="column">nextval< /param>
      < param name="max_lo">5< /param>
    < /generator>
< /id>

5、sequencehilo:同過高低位合成id,建一個sequence序列,不用建表。

< id name="id" column="id">
< generator class="hilo">
< param name="sequence">high_val_seq< /param>
< param name="max_lo">5< /param>
< /generator>
< /id>

6、assigned:用戶自定義id;

< id name="id" column="id">
< generator class="assigned"/>
< /id>

7、foreign:用于一對一關(guān)系共享主健時,兩id值一樣。

當(dāng)設(shè)置了cascade屬性不為none時,Hibernate會自動持久化所關(guān)聯(lián)的對象

cascade屬性的可能值有

   all: 所有情況下均進行關(guān)聯(lián)操作,即save-update和delete。
   none: 所有情況下均不進行關(guān)聯(lián)操作。這是默認(rèn)值。 
   save-update: 在執(zhí)行save/update/saveOrUpdate時進行關(guān)聯(lián)操作。 
   delete: 在執(zhí)行delete 時進行關(guān)聯(lián)操作。

   all-delete-orphan: 當(dāng)一個節(jié)點在對象圖中成為孤兒節(jié)點時,刪除該節(jié)點。比如在一個一對多的關(guān)系中,Student包含多個book,當(dāng)在對象關(guān)系中刪除一個book時,此book即成為孤兒節(jié)點。


本文標(biāo)題:*.hbm.xml文件——單表映射、雙向多對一以及多對多的配置
標(biāo)題URL:http://weahome.cn/article/ppgije.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部