日本免费精品视频,男人的天堂在线免费视频,成人久久久精品乱码一区二区三区,高清成人爽a毛片免费网站

在線客服
精通Hibernate:Java對象持久化技術詳解(第2版)(含光盤1張)圖書
人氣:39

精通Hibernate:Java對象持久化技術詳解(第2版)(含光盤1張)

本書在及時版基礎上,理論內容更新,更加注重理論與實踐的結合,有大量具有典型性和實用價值的Hibernate應用實例。

內容簡介

本書在及時版基礎上,理論內容更新,更加注重理論與實踐的結合,有大量具有典型性和實用價值的Hibernate應用實例。全書將詳細介紹運用目前最成熟的Hibernate 3.3版本進行Java對象持久化的技術,既能掌握用Hibernate工具對這兩種模型進行映射的技術,又能獲得設計與開發Java對象模型和關系數據模型的經驗。光盤包括本書范例源程序、涉及軟件的版本的安裝程序,以及配套的語音講座。

本書無論對于Java開發的新手還是行家來說,都是精通Java對象持久化技術的必備實用手冊。

編輯推薦

凝聚Java魅力,成就開發專家

看清Java萬花筒的本質,從復雜的表象中尋找普遍的規律,深刻理解Java的核心思想

本書在第1版的基礎上,并結合作者多年經驗,將更新的理論知識,精心細致地介紹應用。

作者簡介

孫衛琴:知名IT作家的,Java系列暢銷書的作者。1997年畢業于上海交通大學,隨后從事基于Java的軟件開發工作,還從事Java方面的培訓和咨詢工作,2002年開始Java技術領域的創作,其作者深受讀者歡迎。 代表作有: 《精通Hibernate:Java對象持久化技術詳解(第2

目錄

第1章 Java應用分層架構及軟件模型

1.1 應用程序的分層體系結構

1.1.1 區分物理層和邏輯層

1.1.2 軟件層的特征

1.1.3 軟件分層的優點

1.1.4 軟件分層的缺點

1.1.5 Java應用的持久化層

1.2 軟件的模型

1.2.1 概念模型

1.2.2 關系數據模型

1.2.3 域模型

1.2.4 域對象

1.2.5 域對象之間的關系

1.2.6 域對象的持久化概念

1.3 小結

1.4 思考題

第2章 Java對象持久化技術概述

2.1 直接通過JDBC API來持久化實體域對象

2.2 ORM簡介

2.2.1 對象-關系映射的概念

2.2.2 ORM中間件的基本使用方法

2.2.3 常用的ORM中間件

2.3 實體域對象的其他持久化模式

2.3.1 主動域對象模式

2.3.2 JDO模式

2.3.3 CMP模式

2.4 Hibernate API簡介

2.4.1 Hibernate的核心接口

2.4.2 事件處理接口

2.4.3 Hibernate映射類型接口

2.4.4 可供擴展的接口

2.5 小結

2.6 思考題

第3章 及時個Hibernate應用

3.1 創建Hibernate的配置文件

3.2 創建持久化類

3.3 創建數據庫Schema

3.4 創建對象-關系映射文件

3.4.1 映射文件的文檔類型定義(DTD)

3.4.2 把Customer持久化類映射到CUSTOMERS表

3.5 通過Hibernate API操縱數據庫

3.5.1 Hibernate的初始化

3.5.2 訪問Hibernate的Session接口

3.6 運行helloapp應用

3.6.1 創建運行本書范例的系統環境

3.6.2 創建helloapp應用的目錄結構

3.6.3 把helloapp應用作為獨立應用程序運行

3.6.4 把helloapp應用作為Java Web應用運行

3.7 小結

3.8 思考題

第4章 hbm2java和hbm2ddl工具

4.1 創建對象-關系映射文件

4.1.1 定制持久化類

4.1.2 定制數據庫表

4.2 建立項目的目錄結構

4.3 運行hbm2java工具

4.4 運行hbm2ddl工具

4.5 使用XML格式的配置文件

4.6 小結

4.7 思考題

第5章 對象-關系映射基礎

5.1 持久化類的屬性及訪問方法

5.1.1 基本類型屬性和包裝類型屬性

5.1.2 Hibernate訪問持久化類屬性的策略

5.1.3 在持久化類的訪問方法中加入程序邏輯

5.1.4 設置派生屬性

5.1.5 控制insert和update語句

5.2 處理SQL引用標識符

5.3 創建命名策略

5.4 設置數據庫Schema

5.5 設置類的包名

5.6 運行本章的范例程序

5.7 小結

5.8 思考題

第6章 映射對象標識符

6.1 關系數據庫按主鍵區分不同的記錄

6.1.1 把主鍵定義為自動增長標識符類型

6.1.2 從序列(Sequence)中獲取自動增長的標識符

6.2 Java語言按內存地址區分不同的對象

6.3 Hibernate用對象標識符(OID)來區分對象

6.4 Hibernate的內置標識符生成器的用法

6.4.1 increment標識符生成器

6.4.2 identity標識符生成器

6.4.3 sequence標識符生成器

6.4.4 hilo標識符生成器

6.4.5 native標識符生成器

6.5 映射自然主鍵

6.5.1 映射單個自然主鍵

6.5.2 映射復合自然主鍵

6.6 小結

6.7 思考題

第7章 映射一對多關聯關系

7.1 建立多對一的單向關聯關系

7.1.1 元素的not-null屬性

7.1.2 級聯保存和更新

7.2 映射一對多雙向關聯關系

7.2.1 元素的inverse屬性

7.2.2 級聯刪除

7.2.3 父子關系

7.3 映射一對多雙向自身關聯關系

7.4 改進持久化類

7.5 小結

7.6 思考題

第8章 通過Hibernate操縱對象(上)

8.1 Java對象在JVM中的生命周期

8.2 理解Session的緩存

8.2.1 Session的緩存的作用

8.2.2 臟檢查及清理緩存的機制

8.3 Java對象在Hibernate持久化層的狀態

8.3.1 臨時對象的特征

8.3.2 持久化對象的特征

8.3.3 被刪除對象的特征

8.3.4 游離對象的特征

8.4 Session接口的詳細用法

8.4.1 Session的save()和persist()方法

8.4.2 Session的load()和get()方法

8.4.3 Session的update()方法

8.4.4 Session的saveOrUpdate()方法

8.4.5 Session的merge()方法

8.4.6 Session的delete()方法

8.4.7 Session的replicate()方法

8.5 級聯操縱對象圖

8.5.1 級聯保存臨時對象

8.5.2 更新持久化對象

8.5.3 持久化臨時對象

8.5.4 更新游離對象

8.5.5 遍歷對象圖

8.6 小結

8.7 思考題

第9章 通過Hibernate操縱對象(下)

9.1 與觸發器協同工作

9.2 利用攔截器(Interceptor)生成審計日志

9.3 Hibernate的事件處理機制

9.4 批量處理數據

9.4.1 通過Session來進行批量操作

9.4.2 通過StatelessSession來進行批量操作

9.4.3 通過HQL來進行批量操作

9.4.4 直接通過JDBC API來進行批量操作

9.5 使用元數據

9.6 通過Hibernate調用存儲過程

9.7 小結

9.8 思考題

第10章 映射組成關系

10.1 建立精粒度對象模型

10.2 建立粗粒度關系數據模型

10.3 映射組成關系

10.3.1 區分值(Value)類型和實體(Entity)類型

10.3.2 在應用程序中訪問具有組成關系的持久化類

10.4 映射復合組成關系

10.5 小結

10.6 思考題

第11章 Hibernate的映射類型

11.1 Hibernate的內置映射類型

11.1.1 Java基本類型的Hibernate映射類型

11.1.2 Java時間和日期類型的Hibernate映射類型

11.1.3 Java大對象類型的Hibernate映射類型

11.1.4 JDK自帶的個別Java類的Hibernate映射類型

11.1.5 使用Hibernate內置映射類型

11.2 客戶化映射類型

11.2.1 用客戶化映射類型取代Hibernate組件

11.2.2 用UserType映射枚舉類型

11.2.3 實現CompositeUserType接口

11.2.4 運行本節范例程序

11.3 操縱Blob和Clob類型數據

11.4 小結

11.5 思考題

第12章 映射繼承關系

12.1 繼承關系樹的每個具體類對應一個表

12.1.1 創建映射文件

12.1.2 操縱持久化對象

12.2 繼承關系樹的根類對應一個表

12.2.1 創建映射文件

12.2.2 操縱持久化對象

12.3 繼承關系樹的每個類對應一個表

12.3.1 創建映射文件

12.3.2 操縱持久化對象

12.4 選擇繼承關系的映射方式

12.5 映射多對一多態關聯

12.6 小結

12.7 思考題

第13章 Java集合類

13.1 Set(集)

13.1.1 Set的一般用法

13.1.2 HashSet類

13.1.3 TreeSet類

13.1.4 向Set中加入持久化類的對象

13.2 List(列表)

13.3 Map(映射)

13.4 小結

13.5 思考題

第14章 映射值類型集合

14.1 映射Set(集)

14.2 映射Bag(包)

14.3 映射List(列表)

14.4 映射Map

14.5 對集合排序

14.5.1 在數據庫中對集合排序

14.5.2 在內存中對集合排序

14.6 映射組件類型集合

14.7 小結

14.8 思考題

第15章 映射實體關聯關系

15.1 映射一對一關聯

15.1.1 按照外鍵映射

15.1.2 按照主鍵映射

15.2 映射單向多對多關聯

15.3 映射雙向多對多關聯關系

15.3.1 關聯兩端使用元素

15.3.2 在inverse端使用元素

15.3.3 使用組件類集合

15.3.4 把多對多關聯分解為兩個一對多關聯

15.4 小結

15.5 思考題

第16章 Hibernate的檢索策略

16.1 Hibernate的檢索策略簡介

16.2 類級別的檢索策略

16.2.1 立即檢索

16.2.2 延遲檢索

16.3 一對多和多對多關聯的檢索策略

16.3.1 立即檢索(lazy屬性為“false”)

16.3.2 延遲檢索(lazy屬性為默認值“true”)

16.3.3 增強延遲檢索(lazy屬性為“extra”)

16.3.4 批量延遲檢索和批量立即檢索(使用batch-size屬性)

16.3.5 用帶子查詢的select語句整批量初始化orders集合(fetch屬性為“subselect”)

16.3.6 迫切左外連接檢索(fetch屬性為“join”)

16.4 多對一和一對一關聯的檢索策略

16.4.1 迫切左外連接檢索(fetch屬性為“join”)

16.4.2 延遲檢索(lazy屬性為默認值“proxy”)

16.4.3 無延遲檢索(lazy屬性為“no-proxy”)

16.4.4 立即檢索(lazy屬性為“false”)

16.4.5 批量延遲檢索和批量立即檢索(使用batch-size屬性)

16.5 控制迫切左外連接檢索的深度

16.6 在應用程序中顯式指定迫切左外連接檢索策略

16.7 屬性級別的檢索策略

16.8 小結

16.9 思考題

第17章 Hibernate的檢索方式(上)

17.1 Hibernate的檢索方式簡介

17.1.1 HQL檢索方式

17.1.2 QBC檢索方式

17.1.3 本地SQL檢索方式

17.1.4 關于本章范例程序

17.1.5 使用別名

17.1.6 多態查詢

17.1.7 對查詢結果排序

17.1.8 分頁查詢

17.1.9 檢索單個對象(uniqueResult()方法)

17.1.10 按主鍵逐個處理查詢結果(iterate()方法)

17.1.11 可滾動的結果集

17.1.12 在HQL查詢語句中綁定參數

17.1.13 設置查詢附屬事項

17.1.14 在映射文件中定義命名查詢語句

17.1.15 在HQL查詢語句中調用函數

17.2 設定查詢條件

17.2.1 比較運算

17.2.2 范圍運算

17.2.3 字符串模式匹配

17.2.4 邏輯運算

17.2.5 集合運算

17.3 小結

17.4 思考題

第18章 Hibernate的檢索方式(下)

18.1 連接查詢

18.1.1 默認情況下關聯級別的運行時檢索策略

18.1.2 迫切左外連接

18.1.3 左外連接

18.1.4 內連接

18.1.5 迫切內連接

18.1.6 隱式內連接

18.1.7 右外連接

18.1.8 使用SQL風格的交叉連接和隱式內連接

18.1.9 關聯級別運行時的檢索策略

18.2 投影查詢

18.3 報表查詢

18.3.1 使用聚集函數

18.3.2 分組查詢

18.3.3 優化報表查詢的性能

18.4 高級查詢技巧

18.4.1 動態查詢

18.4.2 集合過濾

18.4.3 子查詢

18.4.4 本地SQL查詢

18.4.5 查詢結果轉換器

18.5 查詢性能優化

18.5.1 iterate()方法

18.5.2 查詢緩存

18.6 小結

18.7 思考題

第19章 Hibernate高級配置

19.1 配置數據庫連接池

19.1.1 使用默認的數據庫連接池

19.1.2 使用配置文件指定的數據庫連接池

19.1.3 從容器中獲得數據源

19.1.4 由Java應用本身提供數據庫連接

19.2 配置事務類型

19.3 把SessionFactory與JNDI綁定

19.4 配置日志

19.5 使用XML格式的配置文件

19.6 小結

19.7 思考題

第20章 聲明數據庫事務

20.1 數據庫事務的概念

20.2 聲明事務邊界的方式

20.3 在mysql.exe程序中聲明事務

20.4 Java應用通過JDBC API聲明JDBC事務

20.5 Java應用通過Hibernate API聲明JDBC事務

20.5.1 處理異常

20.5.2 Session與事務的關系

20.5.3 設定事務超時

20.6 Java應用通過Hibernate API聲明JTA事務

20.7 Java應用通過JTA API聲明JTA事務

20.8 小結

20.9 思考題

第21章 處理并發問題

21.1 多個事務并發運行時的并發問題

21.1.1 及時類丟失更新

21.1.2 臟讀

21.1.3 虛讀

21.1.4 不可重復讀

21.1.5 第二類丟失更新

21.2 數據庫系統的鎖的基本原理

21.2.1 鎖的多粒度性及自動鎖升級

21.2.2 鎖的類型和兼容性

21.2.3 死鎖及其防止辦法

21.3 數據庫的事務隔離級別

21.3.1 在mysql.exe程序中設置隔離級別

21.3.2 在應用程序中設置隔離級別

21.4 在應用程序中采用悲觀鎖

21.4.1 利用數據庫系統的獨占鎖來實現悲觀鎖

21.4.2 由應用程序實現悲觀鎖

21.5 利用Hibernate的版本控制來實現樂觀鎖

21.5.1 使用元素

21.5.2 使用元素

21.5.3 對游離對象進行版本檢查

21.5.4 強制更新版本

21.6 實現樂觀鎖的其他方法

21.7 小結

21.8 思考題

第22章 管理Hibernate的緩存

22.1 緩存的基本原理

22.1.1 持久化層的緩存的范圍

22.1.2 持久化層的緩存的并發訪問策略

22.2 Hibernate的二級緩存結構

22.3 管理Hibernate的及時級緩存

22.4 管理Hibernate的第二級緩存

22.4.1 配置進程范圍內的第二級緩存

22.4.2 配置集群范圍內的第二級緩存

22.4.3 在應用程序中管理第二級緩存

22.4.4 Session與第二級緩存的交互模式

22.5 運行本章的范例程序

22.6 小結

22.7 思考題

第23章 管理Session和實現對話

23.1 管理Session對象的生命周期

23.1.1 Session對象的生命周期與本地線程綁定

23.1.2 Session對象的生命周期與JTA事務綁定

23.2 實現對話

23.2.1 使用游離對象

23.2.2 使用手工清理緩存模式下的Session

23.3 小結

23.4 思考題

第24章 Hibernate與Struts框架

24.1 實現業務數據

24.2 實現業務邏輯

24.3 netstore應用的訂單業務

24.4 小結

第25章 Hibernate與EJB組件

25.1 創建EJB組件

25.1.1 編寫Remote接口

25.1.2 編寫Home接口

25.1.3 編寫Enterprise Java Bean類

25.2 在業務類中訪問EJB組件

25.3 J2EE應用

25.3.1 在JBoss上部署EJB組件

25.3.2 在JBoss上部署Web應用

25.3.3 在JBoss上部署J2EE應用

25.4 小結

附錄A 標準SQL語言的用法

A.1 數據完整性

在線預覽

第9章 通過Hibernate操縱對象(下)

9.1與觸發器協同工作

數據庫系統有時會利用觸發器來完成某些業務規則。觸發器在接收到特定的事件時被激發,執行事先定義好的一組數據庫操作。能激發觸發器運行的事件可分為以下幾種:

插入記錄事件,即執行insert語句。

更新記錄事件,即執行update語句。

刪除記錄事件,即執行delete語句。

當Hibernate與數據庫中的觸發器協同工作時,會造成兩類問題:觸發器使Session的緩存中的持久化對象與數據庫中對應數據不一致。

Session的update()方法盲目地激發觸發器。

下面分別介紹出現這兩類問題的原因及解決辦法。

1.觸發器使Session緩存中的數據與數據庫不一致

當Session向數據庫中保存、更新或刪除對象時,如果會激發數據庫中的某個觸發器,常常會帶來~個問題,那就是Session緩存中的持久化對象無法與數據庫中的數據保持同步。出現這一問題的原因在于觸發器運行在數據庫中,它執行的操作對Session是透明的,假如在Session的緩存中已經存在一個Customer對象,接下來當觸發器修改數據庫中CUSTOMERS表的相應記錄時,Session無法檢測到數據庫中數據的變化,因此Session不會自動刷新緩存中的Customer對象。下面舉例說明。

……

網友評論(不代表本站觀點)

來自無昵稱**的評論:

這本書還沒有深入的仔細閱讀,大概翻閱了一下,目錄很詳細。

2013-10-20 17:59:22
來自逍遙盼**的評論:

書還沒有來得及詳細看,大概翻了一下,內容不錯,通俗易懂。

2014-02-18 01:00:13
來自billzhi**的評論:

hibernate領域的王者,寫的很好。值得購買,推薦初學者,深入了解的用。

2014-05-05 10:32:25
來自無昵稱**的評論:

大體上來說還可以,就是書中有些概念講的不太正確,閱讀的時候不要盡信,遇到不確定的可以實際試驗一下,避免誤入歧途。

2011-11-22 15:53:38
來自zinoek**的評論:

很詳細,現在hibernate的書看不到了

2014-04-23 18:31:27
來自無昵稱**的評論:

里面代碼太多,作者視乎很喜歡用代碼講道理,理論知識不是很連貫,粗翻看了一下,補了自己hibernate的一些空白知識,但是沒有注解部分的內容比較遺憾。

2011-03-02 09:04:29
來自流氓餃**的評論:

書還是蠻好的,就是買了這邊書,說是有贈品,結果清單上確沒有這邊書,太會忽悠人啦~我本來還以為是沒有啦,我今天有在網上點擊買這本書,又提示有贈品,忽悠,接著忽悠...........

2010-04-09 17:05:34
來自清晨之**的評論:

快遞大哥很贊,所以特定來評論下,當天沒帶手機,快遞大哥跑了3趟把書送到我手里,非常感激

2014-04-19 09:25:26
來自無昵稱**的評論:

沒看,以前買過前一版的看了下覺得不錯送人了,于是又買本

2014-08-19 09:44:36
來自彭d先生**的評論:

之前只是粗略的了解了一下,沒有對hibernate進行深究。入手此書后很喜歡,閑時看看,大有裨益

2013-06-29 10:49:24
來自書蟲書**的評論:

內容跟孫衛琴的前幾個版本很相似,沒什么實質性的改進。也沒有對注解的講解

2012-10-18 16:42:39
來自無昵稱**的評論:

目前正在用到此技術,此書可以很好的提升自己的能力

2012-11-04 17:14:38
來自無昵稱**的評論:

本書介紹的hibernate版本還比較新,類容也很詳細,個人感覺還不錯!

2010-03-17 13:19:10
來自杰諾jer**的評論:

昨天下午4點多的時候下單。。哇。。今天一大早就收到了。。這是我網購以來。當當的配送速度是最快的。。但也有不爽的。。就是居然沒有贈品。。害我空歡喜一場。。算了。。客服的態度良好。。加上這也是本好書。。好好閱讀去了~

2010-04-04 15:35:32
來自無昵稱**的評論:

喜歡衛琴老師的書本,講解條理清晰,實用性強,由淺入深,書本紙張質地,印刷排版都不錯,5分

2015-01-25 13:39:08
來自無昵稱**的評論:

雙11活動期間買了,很不錯優惠了100元錢,真不錯。看了這本書,hibernate就不用看其他書了。

2014-11-09 14:54:01
來自唐唐001**的評論:

看著別人寫好的HQL,自己也能仿照著寫出來,但是不懂Hiberlate的原理,遇到復雜的自己就不會寫了。這本書把原理都講了,看完后收獲很大。

2013-01-07 22:23:03
來自無昵稱**的評論:

很厚很詳細,可以留著當詞典用。零基礎的建議買本薄的看吧,不要一下扎那么深,不然會很痛苦。

2015-05-24 13:06:39
來自無昵稱**的評論:

怎么說呢,孫衛琴的書,名氣很大,但行文枯燥是一貫的毛病了,學院派味道太濃;看著看著就容易瞌睡。另外本書很多內容過于陳舊,像Struts居然還是Struts1的版本?其實像這種厚度和價格的書,完全也可以在后篇加入一些實際操作和高級特性的內容。

2012-05-22 12:42:29
來自無昵稱**的評論:

連買了三本 就這本給我的印象最深,可以好好看一看這本書,雖然項目開發中hibernate部分的都不要求怎么寫,但是懂了總比沒懂的好,另外《深入淺出hibernate》也不錯

2012-09-07 13:37:26
來自lantyu**的評論:

進入書籍看內容,寫的很詳細,基本都能點到關鍵的點,可是調出來看書的框架和編書邏輯,沒太明白,反正我不是按照順序看下去的,此外,講hibernate竟然沒annotation相關,桑心

2013-05-08 16:13:42
來自無昵稱**的評論:

剛收到,沒接到快遞電話,給我放門口某處了。看起來還不錯。不過我選的是周末送上門啊,怎么第二天就來啦?

2016-02-23 20:03:45
來自月影西**的評論:

相比較其他Hibernate的書,這本是一個非常不錯的了。

2014-09-01 16:23:28
來自暫停ing**的評論:

學習Hibernate比較好的書,適合用來入門,也適合在以后當做工具書使用

2015-01-29 14:48:39
來自阿***俊**的評論:

第一章就看不太懂,要具備相當的數據庫知識,相信看懂后會有不少收獲

2017-06-08 20:49:58
來自愛娜for**的評論:

好久沒在當當買書了,這次來了個小小的驚喜,包裝很好,外面有紙盒,里面有防壓隔層,書很新,紙質也不錯,非常滿意,光盤也有。內容還沒來得急看,暫時不評論了,很多人推薦,內容應該查不到哪去~

2014-10-09 13:41:50
來自nksteve**的評論:

還可以 買本孫老師的structs 原理精通,那本書 對structs原理講的很詳細,這本hibernate也是經典之做,它的tomcat,servlet 那本 也很好,反正 適合中國開發者用.建議看遍視頻然后想了解更深入的時候 再看這本書

2013-04-09 20:32:36
來自匿名用**的評論:

由于時間關系,沒怎么看。但對應的軟件版本不是很新了。

2017-03-30 16:53:00

免責聲明

更多出版社