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

正文內(nèi)容

對象關系映射—hibernate-資料下載頁

2025-10-03 10:01本頁面

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

  

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