首 頁
手機(jī)版

精通spring 4.x企業(yè)應(yīng)用開發(fā)實(shí)戰(zhàn) 陳雄華pdf掃描版

精通spring 4.x企業(yè)應(yīng)用開發(fā)實(shí)戰(zhàn)是一本Spring技術(shù)開發(fā)實(shí)戰(zhàn)手冊,由Spring專家陳雄華編著。本書內(nèi)容豐富,深入淺出,作者對Spring的源碼進(jìn)行了徹底分析,深刻揭示了Spring框架的技術(shù)內(nèi)幕,讓讀者知其然,更知其所以然。Spring中的許多設(shè)計(jì)經(jīng)驗(yàn)、技巧、模式具有很高的借鑒性,在透徹學(xué)習(xí)Spring體系結(jié)構(gòu)的同時(shí),讀者可以直接將這些方法借用到具體的應(yīng)用開發(fā)中。

精通spring 4.x企業(yè)應(yīng)用開發(fā)實(shí)戰(zhàn)不但將全書內(nèi)容同步更新到Spring 4.0,還對全書結(jié)構(gòu)進(jìn)行了多方面的優(yōu)化和調(diào)整。移除了兩個(gè)章節(jié),分別是“JavaMail發(fā)送郵件”(考慮到比較簡單)及“在Spring中開發(fā)Web Service”(考慮到Spring MVC開發(fā)REST WebService再合適不過了);新增了3個(gè)全新的章節(jié),分別是“Spring Boot”、“Spring SpEL”及“Spring Cache”,歡迎免費(fèi)下載。

內(nèi)容介紹

Spring 4.0是Spring在積蓄4年后,隆重推出的一個(gè)重大升級版本,進(jìn)一步加強(qiáng)了Spring作為Java領(lǐng)域開源平臺的翹楚地位。Spring 4.0引入了眾多Java開發(fā)者翹首以盼的基于Groovy Bean的配置、HTML 5/WebSocket支持等新功能,全面支持Java 8.0,最低要求是Java 6.0。這些新功能實(shí)用性強(qiáng)、易用性高,可大幅降低Java應(yīng)用,特別是Java Web應(yīng)用開發(fā)的難度,同時(shí)有效提升應(yīng)用開發(fā)的優(yōu)雅性。

《精通spring 4.x企業(yè)應(yīng)用開發(fā)實(shí)戰(zhàn)》是在精通Spring 3.x――企業(yè)應(yīng)用開發(fā)詳解的基礎(chǔ)上,歷時(shí)一年的重大調(diào)整改版而成的,延續(xù)了上一版本“追求深度,注重原理,不停留在技術(shù)表面”的寫作風(fēng)格,力求使讀者在熟練使用Spring的各項(xiàng)功能的同時(shí)透徹理解Spring的內(nèi)部實(shí)現(xiàn),真正做到知其然并知其所以然。此外,本書重點(diǎn)突出了“實(shí)戰(zhàn)性”的主題,力求使全書內(nèi)容體現(xiàn)“從實(shí)際項(xiàng)目中來,到實(shí)際項(xiàng)目中去”的寫作原則。

本書結(jié)構(gòu)

精通spring 4.x企業(yè)應(yīng)用開發(fā)實(shí)戰(zhàn)分為5篇。第1篇為基礎(chǔ)篇,包括第1~3章,講解Spring概述性知識,以便讀者快速建立對Spring的整體認(rèn)識,能夠使用Spring快速開發(fā)一個(gè)簡單的項(xiàng)目,而更多深入的知識則在后續(xù)篇章中展開。第2篇為核心篇,包括第4~9章,講解Spring的IoC、AOP及SpEL的知識,這些知識是Spring的核心,也是Spring所有衍生服務(wù)及功能的基石。第3篇為數(shù)據(jù)篇,包括第10~14章,講解Spring的各種數(shù)據(jù)訪問技術(shù)及事務(wù)管理的內(nèi)容,對事務(wù)管理的實(shí)現(xiàn)機(jī)制和各種疑難問題進(jìn)行剖析。第4篇為應(yīng)用篇,包括第15~18章,講解數(shù)據(jù)緩存、任務(wù)調(diào)度、Web開發(fā)的內(nèi)容,對于企業(yè)應(yīng)用開發(fā)來說,數(shù)據(jù)緩存及任務(wù)調(diào)度是兩個(gè)無法回避的問題,需要重點(diǎn)學(xué)習(xí)和掌握;此外,本篇還精心設(shè)計(jì)了一個(gè)實(shí)戰(zhàn)案例,包含需求分析、數(shù)據(jù)庫設(shè)計(jì)、項(xiàng)目開發(fā)、代碼測試、應(yīng)用部署的整體過程,讓讀者在項(xiàng)目的實(shí)戰(zhàn)中整體串接Spring的知識點(diǎn)。第5篇為提高篇,包括第19章和第20章,講解Spring OXM及單元測試的內(nèi)容

第1章:對Spring框架進(jìn)行了整體性的概述,可使讀者快速建立起對Spring整體性的認(rèn)識。

第2章:通過一個(gè)簡單的例子展現(xiàn)開發(fā)Spring Web應(yīng)用的整體過程,通過這個(gè)實(shí)例,讀者可以快速跨入Spring Web應(yīng)用的世界。

第3章:Spring Boot的設(shè)計(jì)目的是用來簡化新Spring應(yīng)用的搭建和開發(fā)過程,本章通過實(shí)例向讀者講述了Spring Boot的使用技巧。

第4章:講解了Spring IoC容器的知識,通過具體的實(shí)例詳細(xì)地講解了IoC概念;同時(shí),對Spring框架的三個(gè)最重要的框架級接口進(jìn)行了剖析,并對Bean的生命周期進(jìn)行了講解。

第5章:講解了如何在Spring配置文件中使用各種配置方式配置Bean的內(nèi)容,并對各個(gè)配置項(xiàng)的意義進(jìn)行了深入說明。

第6章:對Spring容器進(jìn)行了解構(gòu),從內(nèi)部探究Spring容器的體系結(jié)構(gòu)和運(yùn)行流程。此外,還對Spring容器一些高級主題進(jìn)行了深入闡述。

第7章:從Spring AOP的底層實(shí)現(xiàn)技術(shù)入手,一步步深入到Spring AOP的內(nèi)核中,分析它的底層結(jié)構(gòu)和具體實(shí)現(xiàn)。

第8章:對如何使用基于AspectJ配置AOP的知識進(jìn)行了深入分析,包括使用XML Schema配置文件、使用注解進(jìn)行配置等內(nèi)容。

第9章:SpEL不僅僅是一個(gè)動態(tài)語言,而且Spring容器的很多配置都直接依賴于SpEL工作,因此掌握SpEL是掌握Spring配置的必修課程。
第10章:介紹了Spring所提供的DAO封裝層,包括Spring DAO的異常體系、數(shù)據(jù)訪問模板等內(nèi)容。

第11章:聲明式事務(wù)配置是Spring的一項(xiàng)重要功能,本章介紹了Spring事務(wù)管理的工作機(jī)制,以及通過XML、注解等方式進(jìn)行事務(wù)管理配置等內(nèi)容。

第12章:對實(shí)際應(yīng)用中Spring事務(wù)管理的各種疑難問題進(jìn)行了透徹剖析,讓讀者對Spring事務(wù)管理不再有云遮霧罩的感覺。

第13章:講解了如何使用Spring JDBC進(jìn)行數(shù)據(jù)訪問操作,還重點(diǎn)講述了LOB字段處理、主鍵的產(chǎn)生和獲取等難點(diǎn)知識。

第14章:講解了如何在Spring中集成Hibernate、MyBatis等數(shù)據(jù)訪問框架,同時(shí),讀者還將學(xué)到ORM框架的混用和DAO層設(shè)計(jì)的知識。

......

章節(jié)目錄

 第1篇 基礎(chǔ)篇 
第1章 Spring概述 2 
1.1 認(rèn)識Spring 2 
1.2 關(guān)于SpringSource 4 
1.3 Spring帶給我們什么 5 
1.4 Spring體系結(jié)構(gòu) 6 
1.5 Spring對Java版本的要求 8 
1.6 Spring 4.0新特性 8 
1.6.1 全面支持Java 8.0 9 
1.6.2 核心容器的增強(qiáng) 11 
1.6.3 支持用Groovy定義Bean 12 
1.6.4 Web的增強(qiáng) 12 
1.6.5 支持WebSocket 12 
1.6.6 測試的增強(qiáng) 13 
1.6.7 其他 13 
1.7 Spring子項(xiàng)目 13 
1.8 如何獲取Spring 15 
1.9 小結(jié) 16 
第2章 快速入門 17 
2.1 實(shí)例概述 17 
2.1.1 比Hello World更適用的實(shí)例 18 
2.1.2 實(shí)例功能簡介 18 
2.2 環(huán)境準(zhǔn)備 20 
2.2.1 構(gòu)建工具M(jìn)aven 20 
2.2.2 創(chuàng)建庫表 22 
2.2.3 建立工程 23 
2.2.4 類包及Spring配置文件規(guī)劃 28 
2.3 持久層 29 
2.3.1 建立領(lǐng)域?qū)ο?29 
2.3.2 UserDao 30 
2.3.3 LoginLogDao 33 
2.3.4 在Spring中裝配DAO 34 
2.4 業(yè)務(wù)層 35 
2.4.1 UserService 35 
2.4.2 在Spring中裝配Service 37 
2.4.3 單元測試 38 
2.5 展現(xiàn)層 40 
2.5.1 配置Spring MVC框架 40 
2.5.2 處理登錄請求 42 
2.5.3 JSP視圖頁面 44 
2.6 運(yùn)行Web應(yīng)用 46 
2.7 小結(jié) 48 
第3章 Spring Boot 49 
3.1 Spring Boot概覽 49 
3.1.1 Spring Boot發(fā)展背景 50 
3.1.2 Spring Boot特點(diǎn) 50 
3.1.3 Spring Boot啟動器 50 
3.2 快速入門 52 
3.3 安裝配置 54 
3.3.1 基于Maven環(huán)境配置 54 
3.3.2 基于Gradle環(huán)境配置 56 
3.3.3 基于Spring Boot CLI環(huán)境 
配置 57 
3.3.4 代碼包結(jié)構(gòu)規(guī)劃 58 
3.4 持久層 59 
3.4.1 初始化配置 59 
3.4.2 UserDao 61 
3.5 業(yè)務(wù)層 62 
3.6 展現(xiàn)層 64 
3.6.1 配置pom.xml依賴 64 
3.6.2 配置Spring MVC框架 65 
3.6.3 處理登錄請求 65 
3.7 運(yùn)維支持 67 
3.8 小結(jié) 70 
? 第2篇 核心篇 
第4章 IoC容器 72 
4.1 IoC概述 72 
4.1.1 通過實(shí)例理解IoC的概念 73 
4.1.2 IoC的類型 75 
4.1.3 通過容器完成依賴關(guān)系的 
注入 77 
4.2 相關(guān)Java基礎(chǔ)知識 78 
4.2.1 簡單實(shí)例 78 
4.2.2 類裝載器ClassLoader 80 
4.2.3 Java反射機(jī)制 83 
4.3 資源訪問利器 85 
4.3.1 資源抽象接口 85 
4.3.2 資源加載 88 
4.4 BeanFactory和ApplicationContext 91 
4.4.1 BeanFactory介紹 92 
4.4.2 ApplicationContext介紹 94 
4.4.3 父子容器 103 
4.5 Bean的生命周期 103 
4.5.1 BeanFactory中Bean的生命 
周期 103 
4.5.2 ApplicationContext中Bean 
的生命周期 112 
4.6 小結(jié) 114 
第5章 在IoC容器中裝配Bean 115 
5.1 Spring配置概述 116 
5.1.1 Spring容器高層視圖 116 
5.1.2 基于XML的配置 117 
5.2 Bean基本配置 120 
5.2.1 裝配一個(gè)Bean 120 
5.2.2 Bean的命名 120 
5.3 依賴注入 121 
5.3.1 屬性注入 121 
5.3.2 構(gòu)造函數(shù)注入 124 
5.3.3 工廠方法注入 128 
5.3.4 選擇注入方式的考量 130 
5.4 注入?yún)?shù)詳解 130 
5.4.1 字面值 130 
5.4.2 引用其他Bean 131 
5.4.3 內(nèi)部Bean 133 
5.4.4 null值 133 
5.4.5 級聯(lián)屬性 134 
5.4.6 集合類型屬性 134 
5.4.7 簡化配置方式 138 
5.4.8 自動裝配 141 
5.5 方法注入 142 
5.5.1 lookup方法注入 142 
5.5.2 方法替換 143 
5.6 <bean>之間的關(guān)系 144 
5.6.1 繼承 144 
5.6.2 依賴 145 
5.6.3 引用 146 
5.7 整合多個(gè)配置文件 147 
5.8 Bean作用域 148 
5.8.1 singleton作用域 148 
5.8.2 prototype作用域 149 
5.8.3 與Web應(yīng)用環(huán)境相關(guān)的Bean 
作用域 150 
5.8.4 作用域依賴問題 152 
5.9 FactoryBean 153 
5.10 基于注解的配置 155 
5.10.1 使用注解定義Bean 155 
5.10.2 掃描注解定義的Bean 156 
5.10.3 自動裝配Bean 157 
5.10.4 Bean作用范圍及生命過程 
方法 162 
5.11 基于Java類的配置 164 
5.11.1 使用Java類提供Bean定義 
信息 164 
5.11.2 使用基于Java類的配置信息 
啟動Spring容器 167 
5.12 基于Groovy DSL的配置 169 
5.12.1 使用Groovy DSL提供Bean 
定義信息 169 
5.12.2 使用GenericGroovyApplication 
Context啟動Spring容器 171 
5.13 通過編碼方式動態(tài)添加Bean 172 
5.13.1 通過DefaultListableBean 
Factory 172 
5.13.2 擴(kuò)展自定義標(biāo)簽 173 
5.14 不同配置方式比較 175 
5.15 小結(jié) 177 
第6章 Spring容器高級主題 178 
6.1 Spring容器技術(shù)內(nèi)幕 178 
6.1.1 內(nèi)部工作機(jī)制 179 
6.1.2 BeanDefinition 182 
6.1.3 InstantiationStrategy 183 
6.1.4 BeanWrapper 183 
6.2 屬性編輯器 184 
6.2.1 JavaBean的編輯器 185 
6.2.2 Spring默認(rèn)屬性編輯器 188 
6.2.3 自定義屬性編輯器 189 
6.3 使用外部屬性文件 192 
6.3.1 PropertyPlaceholderConfigurer 
屬性文件 192 
6.3.2 使用加密的屬性文件 195 
6.3.3 屬性文件自身的引用 198 
6.4 引用Bean的屬性值 199 
6.5 國際化信息 201 
6.5.1 基礎(chǔ)知識 201 
6.5.2 MessageSource 206 
6.5.3 容器級的國際化信息資源 209 
6.6 容器事件 210 
6.6.1 Spring事件類結(jié)構(gòu) 211 
6.6.2 解構(gòu)Spring事件體系的具體 
實(shí)現(xiàn) 213 
6.6.3 一個(gè)實(shí)例 214 
6.7 小結(jié) 215 
第7章 Spring AOP基礎(chǔ) 216 
7.1 AOP概述 216 
7.1.1 AOP到底是什么 217 
7.1.2 AOP術(shù)語 219 
7.1.3 AOP的實(shí)現(xiàn)者 221 
7.2 基礎(chǔ)知識 222 
7.2.1 帶有橫切邏輯的實(shí)例 222 
7.2.2 JDK動態(tài)代理 224 
7.2.3 CGLib動態(tài)代理 228 
7.2.4 AOP聯(lián)盟 229 
7.2.5 代理知識小結(jié) 230 
7.3 創(chuàng)建增強(qiáng)類 230 
7.3.1 增強(qiáng)類型 230 
7.3.2 前置增強(qiáng) 231 
7.3.3 后置增強(qiáng) 235 
7.3.4 環(huán)繞增強(qiáng) 236 
7.3.5 異常拋出增強(qiáng) 237 
7.3.6 引介增強(qiáng) 239 
7.4 創(chuàng)建切面 243 
7.4.1 切點(diǎn)類型 243 
7.4.2 切面類型 244 
7.4.3 靜態(tài)普通方法名匹配切面 246 
7.4.4 靜態(tài)正則表達(dá)式方法匹配 
切面 248 
7.4.5 動態(tài)切面 251 
7.4.6 流程切面 254 
7.4.7 復(fù)合切點(diǎn)切面 256 
7.4.8 引介切面 258 
7.5 自動創(chuàng)建代理 259 
7.5.1 實(shí)現(xiàn)類介紹 259 
7.5.2 BeanNameAutoProxyCreator 260 
7.5.3 DefaultAdvisorAutoProxy 
Creator 261 
7.5.4 AOP無法增強(qiáng)疑難問題 
剖析 262 
7.6 小結(jié) 267 
第8章 基于@AspectJ和Schema的 
AOP 269 
8.1 Spring對AOP的支持 269 
8.2 Java 5.0注解知識快速進(jìn)階 270 
8.2.1 了解注解 270 
8.2.2 一個(gè)簡單的注解類 271 
8.2.3 使用注解 272 
8.2.4 訪問注解 273 
8.3 著手使用@AspectJ 274 
8.3.1 使用前的準(zhǔn)備 275 
8.3.2 一個(gè)簡單的例子 275 
8.3.3 如何通過配置使用@AspectJ 
切面 277 
8.4 @AspectJ語法基礎(chǔ) 278 
8.4.1 切點(diǎn)表達(dá)式函數(shù) 278 
8.4.2 在函數(shù)入?yún)⒅惺褂猛ㄅ浞?279 
8.4.3 邏輯運(yùn)算符 280 
8.4.4 不同增強(qiáng)類型 281 
8.4.5 引介增強(qiáng)用法 282 
8.5 切點(diǎn)函數(shù)詳解 283 
8.5.1 @annotation() 284 
8.5.2 execution() 285 
8.5.3 args()和@args() 287 
8.5.4 within() 288 
8.5.5 @within()和@target() 289 
8.5.6 target()和this() 290 
8.6 @AspectJ進(jìn)階 291 
8.6.1 切點(diǎn)復(fù)合運(yùn)算 292 
8.6.2 命名切點(diǎn) 292 
8.6.3 增強(qiáng)織入的順序 294 
8.6.4 訪問連接點(diǎn)信息 294 
8.6.5 綁定連接點(diǎn)方法入?yún)?295 
8.6.6 綁定代理對象 297 
8.6.7 綁定類注解對象 298 
8.6.8 綁定返回值 299 
8.6.9 綁定拋出的異常 299 
8.7 基于Schema配置切面 300 
8.7.1 一個(gè)簡單切面的配置 300 
8.7.2 配置命名切點(diǎn) 302 
8.7.3 各種增強(qiáng)類型的配置 303 
8.7.4 綁定連接點(diǎn)信息 305 
8.7.5 Advisor配置 306 
8.8 混合切面類型 307 
8.8.1 混合使用各種切面類型 308 
8.8.2 各種切面類型總結(jié) 308 
8.9 其他 309 
8.9.1 JVM Class文件字節(jié)碼轉(zhuǎn)換 
基礎(chǔ)知識 309 
8.9.2 使用LTW織入切面 311 
8.10 小結(jié) 314 
第9章 Spring SpEL 316 
9.1 JVM動態(tài)語言 316 
9.2 SpEL表達(dá)式概述 318 
9.3 SpEL核心接口 319 
9.3.1 EvaluationContext接口 320 
9.3.2 SpEL編譯器 321 
9.4 SpEL基礎(chǔ)表達(dá)式 323 
9.4.1 文本字符解析 323 
9.4.2 對象屬性解析 323 
9.4.3 數(shù)組、集合類型解析 324 
9.4.4 方法解析 326 
9.4.5 操作符解析 327 
9.4.6 安全導(dǎo)航操作符 329 
9.4.7 三元操作符 330 
9.4.8 Elvis操作符 331 
9.4.9 賦值、類型、構(gòu)造器、變量 332 
9.4.10 集合過濾 335 
9.4.11 集合轉(zhuǎn)換 335 
9.5 在Spring中使用SpEL 336 
9.5.1 基于XML的配置 336 
9.5.2 基于注解的配置 337 
9.6 小結(jié) 338 
? 第3篇 數(shù)據(jù)篇 
第10章 Spring對DAO的支持 340 
10.1 Spring的DAO理念 340 
10.2 統(tǒng)一的異常體系 341 
10.2.1 Spring的DAO異常體系 341 
10.2.2 JDBC的異常轉(zhuǎn)換器 343 
10.2.3 其他持久化技術(shù)的異常 
轉(zhuǎn)換器 344 
10.3 統(tǒng)一數(shù)據(jù)訪問模板 344 
10.3.1 使用模板和回調(diào)機(jī)制 345 
10.3.2 Spring為不同持久化技術(shù) 
所提供的模板類 347 
10.4 數(shù)據(jù)源 348 
10.4.1 配置一個(gè)數(shù)據(jù)源 348 
10.4.2 獲取JNDI數(shù)據(jù)源 352 
10.4.3 Spring的數(shù)據(jù)源實(shí)現(xiàn)類 353 
10.5 小結(jié) 353 
第11章 Spring的事務(wù)管理 355 
11.1 數(shù)據(jù)庫事務(wù)基礎(chǔ)知識 355 
11.1.1 何為數(shù)據(jù)庫事務(wù) 356 
11.1.2 數(shù)據(jù)并發(fā)的問題 357 
11.1.3 數(shù)據(jù)庫鎖機(jī)制 359 
11.1.4 事務(wù)隔離級別 360 
11.1.5 JDBC對事務(wù)的支持 361 
11.2 ThreadLocal基礎(chǔ)知識 362 
11.2.1 ThreadLocal是什么 363 
11.2.2 ThreadLocal的接口方法 363 
11.2.3 一個(gè)TheadLocal實(shí)例 364 
11.2.4 與Thread同步機(jī)制的比較 366 
11.2.5 Spring使用ThreadLocal解決 
線程安全問題 366 
11.3 Spring對事務(wù)管理的支持 368 
11.3.1 事務(wù)管理關(guān)鍵抽象 369 
11.3.2 Spring的事務(wù)管理器實(shí)現(xiàn)類 371 
11.3.3 事務(wù)同步管理器 374 
11.3.4 事務(wù)傳播行為 375 
11.4 編程式的事務(wù)管理 376 
11.5 使用XML配置聲明式事務(wù) 377 
11.5.1 一個(gè)將被實(shí)施事務(wù)增強(qiáng)的 
服務(wù)接口 379 
11.5.2 使用原始的TransactionProxy 
FactoryBean 379 
11.5.3 基于aop/tx命名空間的配置 382 
11.6 使用注解配置聲明式事務(wù) 385 
11.6.1 使用@Transactional注解 385 
11.6.2 通過AspectJ LTW引入事務(wù) 
切面 389 
11.7 集成特定的應(yīng)用服務(wù)器 390 
11.7.1 BEA WebLogic 390 
11.7.2 WebSphere 390 
11.8 小結(jié) 390 
第12章 Spring的事務(wù)管理難點(diǎn)剖析 392 
12.1 DAO和事務(wù)管理的牽絆 393 
12.1.1 JDBC訪問數(shù)據(jù)庫 393 
12.1.2 Hibernate訪問數(shù)據(jù)庫 395 
12.2 應(yīng)用分層的迷惑 398 
12.3 事務(wù)方法嵌套調(diào)用的迷茫 401 
12.3.1 Spring事務(wù)傳播機(jī)制回顧 401 
12.3.2 相互嵌套的服務(wù)方法 402 
12.4 多線程的困惑 405 
12.4.1 Spring通過單實(shí)例化Bean 
簡化多線程問題 405 
12.4.2 啟動獨(dú)立線程調(diào)用事務(wù) 
方法 405 
12.5 聯(lián)合軍種作戰(zhàn)的混亂 408 
12.5.1 Spring事務(wù)管理器的應(yīng)對 408 
12.5.2 Hibernate+Spring JDBC 
混合框架的事務(wù)管理 408 
12.6 特殊方法成漏網(wǎng)之魚 412 
12.6.1 哪些方法不能實(shí)施Spring 
AOP事務(wù) 412 
12.6.2 事務(wù)增強(qiáng)遺漏實(shí)例 413 
12.7 數(shù)據(jù)連接泄露 416 
12.7.1 底層連接資源的訪問問題 416 
12.7.2 Spring JDBC數(shù)據(jù)連接泄露 417 
12.7.3 事務(wù)環(huán)境下通過DataSource 
Utils獲取數(shù)據(jù)連接 420 
12.7.4 無事務(wù)環(huán)境下通過DataSource 
Utils獲取數(shù)據(jù)連接 422 
12.7.5 JdbcTemplate如何做到對連接 
泄露的免疫 424 
12.7.6 使用TransactionAwareData 
SourceProxy 425 
12.7.7 其他數(shù)據(jù)訪問技術(shù)的等價(jià)類 426 
12.8 小結(jié) 426 
第13章 使用Spring JDBC訪問 
數(shù)據(jù)庫 428 
13.1 使用Spring JDBC 428 
13.1.1 JdbcTemplate小試牛刀 429 
13.1.2 在DAO中使用Jdbc 
Template 429 
13.2 基本的數(shù)據(jù)操作 431 
13.2.1 更改數(shù)據(jù) 431 
13.2.2 返回?cái)?shù)據(jù)庫的表自增主鍵值 434 
13.2.3 批量更改數(shù)據(jù) 436 
13.2.4 查詢數(shù)據(jù) 437 
13.2.5 查詢單值數(shù)據(jù) 440 
13.2.6 調(diào)用存儲過程 442 
13.3 BLOB/CLOB類型數(shù)據(jù)的操作 444 
13.3.1 如何獲取本地?cái)?shù)據(jù)連接 445 
13.3.2 相關(guān)的操作接口 446 
13.3.3 插入LOB類型的數(shù)據(jù) 448 
13.3.4 以塊數(shù)據(jù)方式讀取LOB 
數(shù)據(jù) 450 
13.3.5 以流數(shù)據(jù)方式讀取LOB 
數(shù)據(jù) 451 
13.4 自增鍵和行集 452 
13.4.1 自增鍵的使用 452 
13.4.2 如何規(guī)劃主鍵方案 454 
13.4.3 以行集返回?cái)?shù)據(jù) 456 
13.5 NamedParameterJdbcTemplate 
模板類 456 
13.6 小結(jié) 459 
第14章 整合其他ORM框架 460 
14.1 Spring整合ORM技術(shù) 460 
14.2 在Spring中使用Hibernate 462 
14.2.1 配置SessionFactory 462 
14.2.2 使用HibernateTemplate 465 
14.2.3 處理LOB類型的數(shù)據(jù) 469 
14.2.4 添加Hibernate事件監(jiān)聽器 470 
14.2.5 使用原生的Hibernate API 471 
14.2.6 使用注解配置 472 
14.2.7 事務(wù)處理 474 
14.2.8 延遲加載問題 475 
14.3 在Spring中使用MyBatis 476 
14.3.1 配置SqlMapClient 476 
14.3.2 在Spring中配置MyBatis 478 
14.3.3 編寫MyBatis的DAO 479 
14.4 DAO層設(shè)計(jì) 482 
14.4.1 DAO基類設(shè)計(jì) 482 
14.4.2 查詢接口方法設(shè)計(jì) 484 
14.4.3 分頁查詢接口設(shè)計(jì) 486 
14.5 小結(jié) 487 
? 第4篇 應(yīng)用篇 
第15章 Spring Cache 490 
15.1 緩存概述 490 
15.1.1 緩存的概念 490 
15.1.2 使用Spring Cache 493 
15.2 掌握Spring Cache抽象 498 
15.2.1 緩存注解 498 
15.2.2 緩存管理器 504 
15.2.3 使用SpEL表達(dá)式 506 
15.2.4 基于XML的Cache聲明 506 
15.2.5 以編程方式初始化緩存 507 
15.2.6 自定義緩存注解 509 
15.3 配置Cache存儲 509 
15.3.1 EhCache 510 
15.3.2 Guava 510 
15.3.3 HazelCast 511 
15.3.4 GemFire 511 
15.3.5 JSR-107 Cache 511 
15.4 實(shí)戰(zhàn)經(jīng)驗(yàn) 513 
15.5 小結(jié) 514 
第16章 任務(wù)調(diào)度和異步執(zhí)行器 516 
16.1 任務(wù)調(diào)度概述 516 
16.2 Quartz快速進(jìn)階 517 
16.2.1 Quartz基礎(chǔ)結(jié)構(gòu) 518 
16.2.2 使用SimpleTrigger 520 
16.2.3 使用CronTrigger 522 
16.2.4 使用Calendar 526 
16.2.5 任務(wù)調(diào)度信息存儲 527 
16.3 在Spring中使用Quartz 530 
16.3.1 創(chuàng)建JobDetail 530 
16.3.2 創(chuàng)建Trigger 533 
16.3.3 創(chuàng)建Scheduler 534 
16.4 在Spring中使用JDK Timer 536 
16.4.1 Timer和TimerTask 536 
16.4.2 Spring對Java Timer的支持 539 
16.5 Spring對Java 5.0 Executor的 
支持 540 
16.5.1 了解Java 5.0的Executor 541 
16.5.2 Spring對Executor所提供的 
抽象 543 
16.6 實(shí)際應(yīng)用中的任務(wù)調(diào)度 544 
16.6.1 如何產(chǎn)生任務(wù) 545 
16.6.2 任務(wù)調(diào)度對應(yīng)用程序集群的 
影響 547 
16.6.3 任務(wù)調(diào)度云 547 
16.6.4 Web應(yīng)用程序中調(diào)度器的 
啟動和關(guān)閉問題 549 
16.7 小結(jié) 552 
第17章 Spring MVC 553 
17.1 Spring MVC體系概述 554 
17.1.1 體系結(jié)構(gòu) 554 
17.1.2 配置DispatcherServlet 555 
17.1.3 一個(gè)簡單的實(shí)例 560 
17.2 注解驅(qū)動的控制器 565 
17.2.1 使用@RequestMapping 
映射請求 565 
17.2.2 請求處理方法簽名 569 
17.2.3 使用矩陣變量綁定參數(shù) 570 
17.2.4 請求處理方法簽名詳細(xì)說明 571 
17.2.5 使用HttpMessageConverter 
<T> 575 
17.2.6 使用@RestController和AsyncRestTemplate 584 
17.2.7 處理模型數(shù)據(jù) 586 
17.3 處理方法的數(shù)據(jù)綁定 591 
17.3.1 數(shù)據(jù)綁定流程剖析 592 
17.3.2 數(shù)據(jù)轉(zhuǎn)換 592 
17.3.3 數(shù)據(jù)格式化 598 
17.3.4 數(shù)據(jù)校驗(yàn) 602 
17.4 視圖和視圖解析器 611 
17.4.1 認(rèn)識視圖 611 
17.4.2 認(rèn)識視圖解析器 612 
17.4.3 JSP和JSTL 613 
17.4.4 模板視圖 618 
17.4.5 Excel 621 
17.4.6 PDF 623 
17.4.7 輸出XML 625 
17.4.8 輸出JSON 626 
17.4.9 使用XmlViewResolver 626 
17.4.10 使用ResourceBundleView 
Resolver 627 
17.4.11 混合使用多種視圖技術(shù) 628 
17.5 本地化解析 630 
17.5.1 本地化的概念 630 
17.5.2 使用CookieLocaleResolver 631 
17.5.3 使用SessionLocaleResolver 632 
17.5.4 使用LocaleChange 
Interceptor 632 
17.6 文件上傳 633 
17.6.1 配置MultipartResolver 633 
17.6.2 編寫控制器和文件上傳表單 
頁面 633 
17.7 WebSocket支持 634 
17.7.1 使用WebSocket 634 
17.7.2 WebSocket的限制 638 
17.8 雜項(xiàng) 639 
17.8.1 靜態(tài)資源處理 639 
17.8.2 裝配攔截器 643 
17.8.3 異常處理 644 
17.8.4 RequestContextHolder的 
使用 646 
17.9 小結(jié) 646 
第18章 實(shí)戰(zhàn)案例開發(fā) 648 
18.1 論壇案例概述 648 
18.1.1 論壇整體功能結(jié)構(gòu) 648 
18.1.2 論壇用例描述 649 
18.1.3 主要功能流程描述 651 
18.2 系統(tǒng)設(shè)計(jì) 655 
18.2.1 技術(shù)框架選擇 655 
18.2.2 采用Maven構(gòu)建項(xiàng)目 656 
18.2.3 單元測試類包結(jié)構(gòu)規(guī)劃 657 
18.2.4 系統(tǒng)架構(gòu)圖 658 
18.2.5 PO類設(shè)計(jì) 658 
18.2.6 持久層設(shè)計(jì) 659 
18.2.7 服務(wù)層設(shè)計(jì) 660 
18.2.8 Web層設(shè)計(jì) 661 
18.2.9 數(shù)據(jù)庫設(shè)計(jì) 662 
18.3 開發(fā)前的準(zhǔn)備 663 
18.4 持久層開發(fā) 664 
18.4.1 PO類 664 
18.4.2 DAO基類 666 
18.4.3 通過擴(kuò)展基類定義DAO類 670 
18.4.4 DAO Bean的裝配 672 
18.4.5 使用Hibernate二級緩存 673 
18.5 對持久層進(jìn)行測試 675 
18.5.1 配置Unitils測試環(huán)境 675 
18.5.2 準(zhǔn)備測試數(shù)據(jù)庫及測試 
數(shù)據(jù) 676 
18.5.3 編寫DAO測試基類 677 
18.5.4 編寫B(tài)oardDao測試用例 678 
18.6 服務(wù)層開發(fā) 680 
18.6.1 UserService的開發(fā) 680 
18.6.2 ForumService的開發(fā) 681 
18.6.3 服務(wù)類Bean的裝配 683 
18.7 對服務(wù)層進(jìn)行測試 684 
18.7.1 編寫Service測試基類 685 
18.7.2 編寫ForumService測試 
用例 685 
18.8 Web層開發(fā) 687 
18.8.1 BaseController的基類 687 
18.8.2 用戶登錄和注銷 689 
18.8.3 用戶注冊 691 
18.8.4 論壇管理 692 
18.8.5 論壇普通功能 694 
18.8.6 分頁顯示論壇版塊的主題 
帖子 696 
18.8.7 web.xml配置 700 
18.8.8 Spring MVC配置 702 
18.9 對Web層進(jìn)行測試 703 
18.9.1 編寫Web測試基類 703 
18.9.2 編寫ForumManageController 
測試用例 704 
18.10 開發(fā)環(huán)境部署 705 
18.11 項(xiàng)目配置實(shí)戰(zhàn)經(jīng)驗(yàn) 708 
18.11.1 “傳統(tǒng)的”Web項(xiàng)目屬性 
文件 708 
18.11.2 如何規(guī)劃便于部署的Web 
項(xiàng)目屬性文件 709 
18.11.3 數(shù)據(jù)源的配置 710 
18.12 小結(jié) 712 
? 第5篇 提高篇 
第19章 Spring OXM 714 
19.1 認(rèn)識XML解析技術(shù) 714 
19.1.1 什么是XML 714 
19.1.2 XML的處理技術(shù) 715 
19.2 XML處理利器:XStream 717 
19.2.1 XStream概述 717 
19.2.2 快速入門 718 
19.2.3 使用XStream別名 720 
19.2.4 XStream轉(zhuǎn)換器 721 
19.2.5 XStream注解 723 
19.2.6 流化對象 725 
19.2.7 持久化API 726 
19.2.8 額外功能:處理JSON 727 
19.3 其他常見的O/X Mapping開源 
項(xiàng)目 729 
19.3.1 JAXB 729 
19.3.2 Castor 733 
19.3.3 JiBX 738 
19.3.4 總結(jié)比較 741 
19.4 與Spring OXM整合 742 
19.4.1 Spring OXM概述 742 
19.4.2 整合OXM實(shí)現(xiàn)者 744 
19.4.3 如何在Spring中進(jìn)行配置 744 
19.4.4 Spring OXM簡單實(shí)例 747 
19.5 小結(jié) 749 
第20章 實(shí)戰(zhàn)型單元測試 750 
20.1 單元測試概述 751 
20.1.1 為什么需要單元測試 751 
20.1.2 單元測試之誤解 752 
20.1.3 單元測試之困境 754 
20.1.4 單元測試基本概念 755 
20.2 TestNG快速進(jìn)階 757 
20.2.1 TestNG概述 757 
20.2.2 TestNG生命周期 758 
20.2.3 使用TestNG 758 
20.3 模擬利器Mockito 763 
20.3.1 模擬測試概述 763 
20.3.2 創(chuàng)建Mock對象 763 
20.3.3 設(shè)定Mock對象的期望行為 
及返回值 764 
20.3.4 驗(yàn)證交互行為 766 
20.4 測試整合之王Unitils 767 
20.4.1 Unitils概述 767 
20.4.2 集成Spring 770 
20.4.3 集成Hibernate 773 
20.4.4 集成DbUnit 774 
20.4.5 自定義擴(kuò)展模塊 775 
20.5 使用Unitils測試DAO層 776 
20.5.1 數(shù)據(jù)庫測試的難點(diǎn) 776 
20.5.2 擴(kuò)展DbUnit用Excel準(zhǔn)備 
數(shù)據(jù) 776 
20.5.3 測試實(shí)戰(zhàn) 779 
20.6 使用Unitils測試Service層 789 
20.7 測試Web層 794 
20.7.1 對LoginController進(jìn)行單元 
測試 794 
20.7.2 使用Spring Servlet API模擬 
對象 795 
20.7.3 使用Spring RestTemplate 
測試 797 
20.8 小結(jié) 798

使用說明

1、下載并解壓,得出pdf文件
2、如果打不開本文件,請務(wù)必下載pdf閱讀器
3、安裝后,在打開解壓得出的pdf文件
4、雙擊進(jìn)行閱讀
收起介紹展開介紹
  • 下載地址
精通spring 4.x企業(yè)應(yīng)用開發(fā)實(shí)戰(zhàn) 陳雄華pdf掃描版

有問題? 點(diǎn)此報(bào)錯

發(fā)表評論

0條評論