freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

對(duì)象關(guān)系映射—hibernate-資料下載頁(yè)

2024-10-12 10:01本頁(yè)面

【導(dǎo)讀】掌握Hibernate開發(fā)的相關(guān)知識(shí)。能使用Hibernate進(jìn)行實(shí)際項(xiàng)目開發(fā)。Hibernate成熟、流行、功能強(qiáng)大。用元數(shù)據(jù)描述對(duì)象與數(shù)據(jù)庫(kù)間的映射。Hibernate是非常優(yōu)秀、成熟的O/RMapping框架。對(duì)象和關(guān)系數(shù)據(jù)庫(kù)映射以及查詢功能。為類的持久化類字段申明訪問方法。JavaBeans風(fēng)格的屬性實(shí)行持久化。如果是集合類型的屬性,它的類型必須定義為集合的接口。提供一個(gè)標(biāo)識(shí)屬性。Hibernate運(yùn)行的底層信息:數(shù)據(jù)庫(kù)的URL、用戶名、密碼、JDBC. 驅(qū)動(dòng)類,數(shù)據(jù)庫(kù)Dialect,數(shù)據(jù)庫(kù)連接池等。數(shù)據(jù)庫(kù)連接池的配置-DBCP. 一個(gè)會(huì)話工廠——例如在應(yīng)用初始化時(shí)被創(chuàng)建。Session不是線程安全的,它代表與數(shù)據(jù)庫(kù)之間的一次操作,它的概。念介于Connection和Transaction之間。Session也稱為持久化管理器,因?yàn)樗桥c持久化有關(guān)的操作接口。Session通過SessionFactory打開,在所有的工作完成后,需要關(guān)閉。它與Web層的HttpSession沒有任何關(guān)系。Query(查詢)接口允許你在數(shù)據(jù)庫(kù)上執(zhí)行查詢并控制查詢?nèi)绾螆?zhí)行。查詢語(yǔ)句使用HQL或者本地?cái)?shù)據(jù)庫(kù)的SQL方言編寫。

  

【正文】 ( 原生 SQL查詢) :直接使用數(shù)據(jù)庫(kù)提供的SQL方言進(jìn)行查詢。 例子:標(biāo)準(zhǔn)化對(duì)象查詢 (Criteria Query) ?簡(jiǎn)單例子: 查詢用戶名以“ J”開頭的所有用戶。 Criteria criteria = ()。 ((name,J%))。 List users = ()。 Hibernate語(yǔ)言查詢( Hibernate Query Language, HQL) ? HQL用面向?qū)ο蟮姆绞缴?SQL ? 以類和屬性來(lái)代替表和數(shù)據(jù)列 ? 支持多態(tài) ? 支持各種關(guān)聯(lián) ? 減少了 SQL的冗余 ? HQL支持所有的關(guān)系數(shù)據(jù)庫(kù)操作 ? 連接( joins,包括 Inner/outer/full joins),笛卡爾積 (cartesian products) ? 投影( projection) ? 聚合( Aggregation, max, avg)和分組( group) ? 排序( Ordering) ? 子查詢( Subqueries) ? SQL函數(shù)( SQL function calls) 例子: Hibernate語(yǔ)言查詢( Hibernate Query Language, HQL) ?簡(jiǎn)單例子: 查詢用戶名以“ J”開頭的所有用戶。 Query query = ( from User user where like 39。J%39。)。 List users = ()。 ?復(fù)雜例子: 從 User和 Group中查找屬于“ admin”組的所有用戶。 Query query = ( “from User user where =?admin’” )。 如果用傳統(tǒng)的 SQL則查詢語(yǔ)句如下: select as userId, as name, as groupId, as idCardId from TBL_USER user, TBL_GROUP group where (=39。admin39。 and =) 六、 Hibernate最佳實(shí)踐( Best Practices) 使用 Configuration裝載映射文件時(shí),不要使用絕對(duì)路徑裝載。最好的方式是通過 getResourceAsStream()裝載映射文件,這樣 Hibernate會(huì)從 classpath中尋找已配置的映射文件。 SessionFactory的創(chuàng)建非常消耗資源,整個(gè)應(yīng)用一般只要一個(gè)SessionFactory就夠了,只有多個(gè)數(shù)據(jù)庫(kù)的時(shí)候才會(huì)使用多個(gè)SessionFactory。 在整個(gè)應(yīng)用中, Session和事務(wù)應(yīng)該能夠統(tǒng)一管理。( Spring為Hibernate提供了非常好的支持) 將所有的集合屬性配置設(shè)置為懶加載( lazy=”true”)。 在, lazy默認(rèn)值是“ false”,但 lazy的默認(rèn)改為“ true”了。 Hibernate最佳實(shí)踐( Best Practices) 在定義關(guān)聯(lián)關(guān)系時(shí),集合首選 Set, 如果集合中的實(shí)體存在重復(fù),則選擇 List( 在定義配置文件時(shí),可以將 List定義為 bag), 數(shù)組的性能最差。 在一對(duì)多的雙向關(guān)聯(lián)中,一般將集合的 inverse屬性設(shè)置為 true, 讓集合的對(duì)方維護(hù)關(guān)聯(lián)關(guān)系。例如: GroupUser, 由 User來(lái)維護(hù) Group和 User的關(guān)聯(lián)關(guān)系。 HQL子句本身大小寫無(wú)關(guān),但是其中出現(xiàn)的類名和屬性名必須注意大小寫區(qū)分。 在非分布式架構(gòu)中, 不需要使用 DTO來(lái)向上層傳輸數(shù)據(jù)。直接使用POJO的 Entity就可以了。 如果要精通 Hibernate, 熟練掌握關(guān)系數(shù)據(jù)庫(kù)理論和 SQL是前提條件。 Hibernate資源 ? 官方網(wǎng)站: ? 國(guó)內(nèi)網(wǎng)站: ? Java新視線論壇: ? 《 Hibernate 中文開發(fā)指南 》 作者夏昕 ( ? 《 深入淺出 Hibernate》 作者:夏昕 曹曉鋼 唐勇 ( ? 《 Hibernate in Action》 作者: Christian Bauer and Gavin King( ) ? 《 Hibernate: A Developer39。s Notebook》 作者: James Elliott
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1