最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Hibernate組件映射代碼詳解

 更新時(shí)間:2018年02月08日 09:09:51   作者:lavimer  
這篇文章主要介紹了Hibernate組件映射代碼詳解,分享了相關(guān)代碼示例,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下

本文研究的主要是Hibernate組件映射的相關(guān)內(nèi)容,具體如下。

組件關(guān)聯(lián)映射的屬性是復(fù)雜類型的持久化類,但不是實(shí)體類,即數(shù)據(jù)庫中沒有表與該屬性對應(yīng),但該類的屬性要持久保存。

比如:外國人的名字name分為firstName和lastName。

MyName.java:

public class MyName {
	private String firstName;
	private String lastName;
	public String getFirstName() {
		return firstName;
	}
	public void setFirstName(String firstName) {
		this.firstName = firstName;
	}
	public String getLastName() {
		return lastName;
	}
	public void setLastName(String lastName) {
		this.lastName = lastName;
	}
}

注:這是一個(gè)組件類,不和數(shù)據(jù)庫進(jìn)行映射,它對應(yīng)People中的name字段。

People.java:

public class People {
	private Integer pid;
	/*名字通過MyName這個(gè)類來組合,即組件關(guān)聯(lián)*/
	private MyName name;
	public Integer getPid() {
		return pid;
	}
	public void setPid(Integer pid) {
		this.pid = pid;
	}
	public MyName getName() {
		return name;
	}
	public void setName(MyName name) {
		this.name = name;
	}
}

注:name字段是通過組件(MyName類)關(guān)聯(lián)來是實(shí)現(xiàn)的。

People.hbm.xml:

<?xml version="1.0"?> 
<!DOCTYPE hibernate-mapping PUBLIC  
  "-//Hibernate/Hibernate Mapping DTD 3.0//EN" 
  "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> 
<hibernate-mapping package="com.lixue.bean"> 
  <class name="People" table="t_people"> 
    <id name="pid"> 
      <generator class="native"/> 
    </id> 
     
    <!-- 通過Component來實(shí)現(xiàn)主鍵的映射 --> 
    <component name="name" class="MyName"> 
      <property name="firstName" /> 
      <property name="lastName" /> 
    </component> 
     
  </class> 
</hibernate-mapping> 

注:組件關(guān)聯(lián)是通過<component>標(biāo)簽來映射的。

測試類:

public void testSave1(){
	/*定義Session和事物*/
	Session session = null;
	Transaction transaction = null;
	try {
		/*獲取Session并開啟事物*/
		session = HibernateUtils.getSession();
		transaction = session.beginTransaction();
		/*創(chuàng)建名字*/
		MyName myName = new MyName();
		myName.setFirstName("喬治");
		myName.setLastName("華盛頓");
		/*創(chuàng)建人并設(shè)置屬性*/
		People people = new People();
		people.setName(myName);
		session.save(people);
		/*提交事物*/
		transaction.commit();
	}
	catch (Exception e) {
		e.printStackTrace();
		transaction.rollback();
	}
	finally{
		HibernateUtils.closeSession(session);
	}
}

總結(jié)

以上就是本文關(guān)于Hibernate組件映射代碼詳解的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

相關(guān)文章

  • 如何使用eclipse搭建maven多module項(xiàng)目(構(gòu)建父子項(xiàng)目)

    如何使用eclipse搭建maven多module項(xiàng)目(構(gòu)建父子項(xiàng)目)

    這篇文章主要介紹了如何使用eclipse搭建maven多module項(xiàng)目(構(gòu)建父子項(xiàng)目) ,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-12-12
  • 從零開始在Centos7上部署SpringBoot項(xiàng)目

    從零開始在Centos7上部署SpringBoot項(xiàng)目

    本文主要介紹了從零開始在Centos7上部署SpringBoot項(xiàng)目,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • 為什么在foreach循環(huán)中JAVA集合不能添加或刪除元素

    為什么在foreach循環(huán)中JAVA集合不能添加或刪除元素

    今天給大家?guī)淼奈恼率顷P(guān)于Java的相關(guān)知識(shí),文章圍繞著為什么在foreach循環(huán)中JAVA集合不能添加或刪除元素展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • Java eclipse doc文檔生成流程解析

    Java eclipse doc文檔生成流程解析

    這篇文章主要介紹了Java eclipse doc文檔生成流程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-12-12
  • java String類功能、原理與應(yīng)用案例【統(tǒng)計(jì)、判斷、轉(zhuǎn)換等】

    java String類功能、原理與應(yīng)用案例【統(tǒng)計(jì)、判斷、轉(zhuǎn)換等】

    這篇文章主要介紹了java String類功能、原理與應(yīng)用案例,結(jié)合實(shí)例形式詳細(xì)分析了java String類的基本功能、構(gòu)造方法,以及使用String類實(shí)現(xiàn)統(tǒng)計(jì)、判斷、轉(zhuǎn)換等功能相關(guān)操作技巧,需要的朋友可以參考下
    2019-03-03
  • 淺談為什么要使用mybatis的@param

    淺談為什么要使用mybatis的@param

    這篇文章主要介紹了淺談為什么要使用mybatis的@param,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • 擴(kuò)展Hibernate使用自定義數(shù)據(jù)庫連接池的方法

    擴(kuò)展Hibernate使用自定義數(shù)據(jù)庫連接池的方法

    這篇文章主要介紹了擴(kuò)展Hibernate使用自定義數(shù)據(jù)庫連接池的方法,涉及Hibernate數(shù)據(jù)庫操作擴(kuò)展的相關(guān)技巧,需要的朋友可以參考下
    2016-03-03
  • MybatisPlus使用Mybatis的XML的動(dòng)態(tài)SQL的功能實(shí)現(xiàn)多表查詢

    MybatisPlus使用Mybatis的XML的動(dòng)態(tài)SQL的功能實(shí)現(xiàn)多表查詢

    本文主要介紹了MybatisPlus使用Mybatis的XML的動(dòng)態(tài)SQL的功能實(shí)現(xiàn)多表查詢,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-11-11
  • Java_Spring之Spring5?的新特性

    Java_Spring之Spring5?的新特性

    這篇文章主要介紹了Java_Spring中Spring5?的新特性,需要利用jdk8?版本更新的內(nèi)容,依賴庫更新,感興趣的小伙伴可以參考閱讀
    2023-04-04
  • 基于MyBatis的parameterType傳入?yún)?shù)類型

    基于MyBatis的parameterType傳入?yún)?shù)類型

    這篇文章主要介紹了基于MyBatis的parameterType傳入?yún)?shù)類型,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09

最新評論

沙洋县| 永修县| 集贤县| 洛川县| 绍兴市| 甘南县| 陵川县| 若羌县| 象州县| 手机| 武冈市| 晋城| 莱芜市| 金阳县| 阿拉善左旗| 专栏| 徐汇区| 德令哈市| 鄱阳县| 旺苍县| 常德市| 花垣县| 子长县| 汉中市| 西吉县| 江津市| 赫章县| 稷山县| 衡东县| 铁岭县| 昌黎县| 清远市| 项城市| 广州市| 马公市| 洛南县| 息烽县| 卢氏县| 墨玉县| 安陆市| 延长县|