<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Spring 3.x企業(yè)應(yīng)用開發(fā)實(shí)戰(zhàn)

          聯(lián)合創(chuàng)作 · 2023-09-29 11:21

          內(nèi)容簡介

          Spring 3.0是Spring在積蓄了3年之久后,隆重推出的一個重大升級版本,進(jìn)一步加強(qiáng)了Spring作為Java領(lǐng)域第一開源平臺的翹楚地位。

          Spring 3.0引入了眾多Java開發(fā)者翹首以盼的新功能和新特性,如OXM、校驗(yàn)及格式化框架、REST風(fēng)格的Web編程模型等。這些新功能實(shí)用性強(qiáng)、易用性高,可大幅降低Java應(yīng)用,特別是Java Web應(yīng)用開發(fā)的難度,同時有效提升應(yīng)用開發(fā)的優(yōu)雅性。

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

          內(nèi)容簡介

          Spring 3.0是Spring在積蓄了3年之久后,隆重推出的一個重大升級版本,進(jìn)一步加強(qiáng)了Spring作為Java領(lǐng)域第一開源平臺的翹楚地位。

          Spring 3.0引入了眾多Java開發(fā)者翹首以盼的新功能和新特性,如OXM、校驗(yàn)及格式化框架、REST風(fēng)格的Web編程模型等。這些新功能實(shí)用性強(qiáng)、易用性高,可大幅降低Java應(yīng)用,特別是Java Web應(yīng)用開發(fā)的難度,同時有效提升應(yīng)用開發(fā)的優(yōu)雅性。

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

          目錄

          第1篇 概述

          第1章 Spring概述 2

          1.1 認(rèn)識Spring 3

          1.2 關(guān)于SpringSource 4

          1.3 Spring帶給我們什么 5

          1.4 Spring體系結(jié)構(gòu) 6

          1.5 Spring 3.0的新功能 8

          1.5.1 核心API更新到Java 5.0 8

          1.5.2 Spring表達(dá)式語言 8

          1.5.3 可通過Java類提供IoC配置信息 9

          1.5.4 通用類型轉(zhuǎn)換系統(tǒng)和屬性格式化

          系統(tǒng) 10

          1.5.5 數(shù)據(jù)訪問層新增OXM功能 10

          1.5.6 Web層的增強(qiáng) 10

          1.5.7 其他 11

          1.6 Spring對Java版本的要求 11

          1.7 如何獲取Spring 11

          1.8 小結(jié) 12

          第2章 快速入門 13

          2.1 實(shí)例功能概述 14

          2.1.1 比Hello World更適用的實(shí)例 14

          2.1.2 實(shí)例功能簡介 14

          2.2 環(huán)境準(zhǔn)備 16

          2.2.1 創(chuàng)建庫表 16

          2.2.2 建立工程 17

          2.2.3 類包及Spring配置文件規(guī)劃 19

          2.3 持久層 20

          2.3.1 建立領(lǐng)域?qū)ο?20

          2.3.2 UserDao 21

          2.3.3 LoginLogDao 24

          2.3.4 在Spring中裝配DAO 24

          2.4 業(yè)務(wù)層 26

          2.4.1 UserService 26

          2.4.2 在Spring中裝配Service 27

          2.4.3 單元測試 29

          2.5 展現(xiàn)層 31

          2.5.1 配置Spring MVC框架 31

          2.5.2 處理登錄請求 33

          2.5.3 JSP視圖頁面 35

          2.6 運(yùn)行Web應(yīng)用 37

          2.7 小結(jié) 38

          第2篇 IoC和AOP

          第3章 IoC容器概述 40

          3.1 IoC概述 41

          3.1.1 通過實(shí)例理解IoC的概念 41

          3.1.2 IoC的類型 43

          3.1.3 通過容器完成依賴關(guān)系的注入 45

          3.2 相關(guān)Java基礎(chǔ)知識 46

          3.2.1 簡單實(shí)例 46

          3.2.2 類裝載器ClassLoader 48

          3.2.3 Java反射機(jī)制 51

          3.3 資源訪問利器 53

          3.3.1 資源抽象接口 53

          3.3.2 資源加載 56

          3.4 BeanFactory和ApplicationContext 58

          3.4.1 BeanFactory介紹 58

          3.4.2 ApplicationContext介紹 61

          3.4.3 父子容器 68

          3.5 Bean的生命周期 68

          3.5.1 BeanFactory中Bean的生命周期 68

          3.5.2 ApplicationContext中Bean的

          生命周期 77

          3.6 小結(jié) 79

          第4章 在IoC容器中裝配Bean 80

          4.1 Spring配置概述 81

          4.1.1 Spring容器高層視圖 81

          4.1.2 基于XML的配置 82

          4.2 Bean基本配置 84

          4.2.1 裝配一個Bean 84

          4.2.2 Bean的命名 85

          4.3 依賴注入 86

          4.3.1 屬性注入 86

          4.3.2 構(gòu)造函數(shù)注入 89

          4.3.3 工廠方法注入 93

          4.3.4 選擇注入方式的考量 94

          4.4 注入?yún)?shù)詳解 95

          4.4.1 字面值 95

          4.4.2 引用其他Bean 96

          4.4.3 內(nèi)部Bean 98

          4.4.4 null值 98

          4.4.5 級聯(lián)屬性 98

          4.4.6 集合類型屬性 99

          4.4.7 簡化配置方式 103

          4.4.8 自動裝配 106

          4.5 方法注入 107

          4.5.1 lookup方法注入 107

          4.5.2 方法替換 108

          4.6 <bean>之間的關(guān)系 109

          4.6.1 繼承 109

          4.6.2 依賴 110

          4.6.3 引用 111

          4.7 整合多個配置文件 112

          4.8 Bean作用域 113

          4.8.1 singleton作用域 113

          4.8.2 prototype作用域 114

          4.8.3 Web應(yīng)用環(huán)境相關(guān)的Bean

          作用域 115

          4.8.4 作用域依賴問題 117

          4.9 FactoryBean 118

          4.10 基于注解的配置 120

          4.10.1 使用注解定義Bean 120

          4.10.2 使用注解配置信息啟動Spring

          容器 120

          4.10.3 自動裝配Bean 122

          4.10.4 Bean作用范圍及生命過程方法 125

          4.11 基于Java類的配置 127

          4.11.1 使用Java類提供Bean定義

          信息 127

          4.11.2 使用基于Java類的配置信息

          啟動Spring容器 130

          4.12 不同配置方式比較 132

          4.13 小結(jié) 134

          第5章 Spring容器高級主題 135

          5.1 Spring容器技術(shù)內(nèi)幕 136

          5.1.1 內(nèi)部工作機(jī)制 136

          5.1.2 BeanDefinition 139

          5.1.3 InstantiationStrategy 140

          5.1.4 BeanWrapper 140

          5.2 屬性編輯器 141

          5.2.1 JavaBean的編輯器 142

          5.2.2 Spring默認(rèn)屬性編輯器 145

          5.2.3 自定義屬性編輯器 146

          5.3 使用外部屬性文件 149

          5.3.1 使用外部屬性文件 149

          5.3.2 使用加密的屬性文件 151

          5.3.3 屬性文件自身的引用 155

          5.4 引用Bean的屬性值 156

          5.5 國際化信息 158

          5.5.1 基礎(chǔ)知識 158

          5.5.2 MessageSource 163

          5.5.3 容器級的國際化信息資源 166

          5.6 容器事件 167

          5.6.1 Spring事件類結(jié)構(gòu) 168

          5.6.2 解構(gòu)Spring事件體系的具體

          實(shí)現(xiàn) 169

          5.6.3 一個實(shí)例 170

          5.7 小結(jié) 172

          第6章 Spring AOP基礎(chǔ) 173

          6.1 AOP概述 174

          6.1.1 AOP到底是什么 174

          6.1.2 AOP術(shù)語 176

          6.1.3 AOP的實(shí)現(xiàn)者 178

          6.2 基礎(chǔ)知識 178

          6.2.1 帶有橫切邏輯的實(shí)例 178

          6.2.2 JDK動態(tài)代理 181

          6.2.3 CGLib動態(tài)代理 184

          6.2.4 AOP聯(lián)盟 186

          6.2.5 代理知識小結(jié) 186

          6.3 創(chuàng)建增強(qiáng)類 187

          6.3.1 增強(qiáng)類型 187

          6.3.2 前置增強(qiáng) 188

          6.3.3 后置增強(qiáng) 192

          6.3.4 環(huán)繞增強(qiáng) 193

          6.3.5 異常拋出增強(qiáng) 194

          6.3.6 引介增強(qiáng) 196

          6.4 創(chuàng)建切面 199

          6.4.1 切點(diǎn)類型 200

          6.4.2 切面類型 201

          6.4.3 靜態(tài)普通方法名匹配切面 203

          6.4.4 靜態(tài)正則表達(dá)式方法匹配切面 205

          6.4.5 動態(tài)切面 208

          6.4.6 流程切面 211

          6.4.7 復(fù)合切點(diǎn)切面 213

          6.4.8 引介切面 215

          6.5 自動創(chuàng)建代理 216

          6.5.1 實(shí)現(xiàn)類介紹 217

          6.5.2 BeanNameAutoProxyCreator 217

          6.5.3 DefaultAdvisorAutoProxyCreator 219

          6.6 小結(jié) 220

          第7章 基于@AspectJ和Schema的AOP 221

          7.1 Spring對AOP的支持 222

          7.2 JDK 5.0注解知識快速進(jìn)階 222

          7.2.1 了解注解 222

          7.2.2 一個簡單的注解類 223

          7.2.3 使用注解 224

          7.2.4 訪問注解 225

          7.3 著手使用@AspectJ 226

          7.3.1 使用前的準(zhǔn)備 226

          7.3.2 一個簡單的例子 227

          7.3.3 如何通過配置使用@AspectJ

          切面 229

          7.4 @AspectJ語法基礎(chǔ) 230

          7.4.1 切點(diǎn)表達(dá)式函數(shù) 230

          7.4.2 在函數(shù)入?yún)⒅惺褂猛ㄅ浞?231

          7.4.3 邏輯運(yùn)算符 232

          7.4.4 不同增強(qiáng)類型 232

          7.4.5 引介增強(qiáng)用法 233

          7.5 切點(diǎn)函數(shù)詳解 235

          7.5.1 @annotation() 235

          7.5.2 execution() 237

          7.5.3 args()和@args() 238

          7.5.4 within() 240

          7.5.5 @within()和@target() 240

          7.5.6 target()的this() 241

          7.6 @AspectJ進(jìn)階 243

          7.6.1 切點(diǎn)復(fù)合運(yùn)算 243

          7.6.2 命名切點(diǎn) 244

          7.6.3 增強(qiáng)織入的順序 245

          7.6.4 訪問連接點(diǎn)信息 246

          7.6.5 綁定連接點(diǎn)方法入?yún)?247

          7.6.6 綁定代理對象 249

          7.6.7 綁定類注解對象 249

          7.6.8 綁定返回值 250

          7.6.9 綁定拋出的異常 251

          7.7 基于Schema配置切面 252

          7.7.1 一個簡單切面的配置 252

          7.7.2 配置命名切點(diǎn) 253

          7.7.3 各種增強(qiáng)類型的配置 255

          7.7.4 綁定連接點(diǎn)信息 257

          7.7.5 Advisor配置 258

          7.8 混合切面類型 259

          7.8.1 混合使用各種切面類型 260

          7.8.2 各種切面類型總結(jié) 261

          7.9 JVM Class文件字節(jié)碼轉(zhuǎn)換基礎(chǔ)

          知識 261

          7.9.1 java.lang.instrument包的工作

          原理 262

          7.9.2 如何向JVM中注冊轉(zhuǎn)換器 263

          7.9.3 使用JVM啟動參數(shù)注冊

          轉(zhuǎn)換器的問題 265

          7.10 使用LTW織入切面 265

          7.10.1 Spring的LoadTimeWeaver 266

          7.10.2 使用LTW織入一個切面 268

          7.10.3 在Tomcat下的配置 270

          7.10.4 在其他Web應(yīng)用服務(wù)器下的

          配置 271

          7.11 小結(jié) 271

          第3篇 數(shù)據(jù)訪問

          第8章 Spring對DAO的支持 274

          8.1 Spring的DAO理念 275

          8.2 統(tǒng)一的異常體系 275

          8.2.1 Spring的DAO異常體系 276

          8.2.2 JDBC的異常轉(zhuǎn)換器 278

          8.2.3 其他持久技術(shù)的異常轉(zhuǎn)換器 278

          8.3 統(tǒng)一數(shù)據(jù)訪問模板 279

          8.3.1 使用模板和回調(diào)機(jī)制 279

          8.3.2 Spring為不同持久化技術(shù)所

          提供的模板類 281

          8.4 數(shù)據(jù)源 282

          8.4.1 配置一個數(shù)據(jù)源 282

          8.4.2 獲取JNDI數(shù)據(jù)源 287

          8.4.3 Spring的數(shù)據(jù)源實(shí)現(xiàn)類 287

          8.5 小結(jié) 288

          第9章 Spring的事務(wù)管理 289

          9.1 數(shù)據(jù)庫事務(wù)基礎(chǔ)知識 290

          9.1.1 何為數(shù)據(jù)庫事務(wù) 290

          9.1.2 數(shù)據(jù)并發(fā)的問題 291

          9.1.3 數(shù)據(jù)庫鎖機(jī)制 293

          9.1.4 事務(wù)隔離級別 294

          9.1.5 JDBC對事務(wù)支持 294

          9.2 ThreadLocal基礎(chǔ)知識 296

          9.2.1 ThreadLocal是什么 296

          9.2.2 ThreadLocal的接口方法 297

          9.2.3 一個TheadLocal實(shí)例 298

          9.2.4 與Thread同步機(jī)制的比較 299

          9.2.5 Spring使用ThreadLocal解決

          線程安全問題 300

          9.3 Spring對事務(wù)管理的支持 301

          9.3.1 事務(wù)管理關(guān)鍵抽象 302

          9.3.2 Spring的事務(wù)管理器實(shí)現(xiàn)類 305

          9.3.3 事務(wù)同步管理器 307

          9.3.4 事務(wù)傳播行為 309

          9.4 編程式的事務(wù)管理 309

          9.5 使用XML配置聲明式事務(wù) 310

          9.5.1 一個將被實(shí)施事務(wù)增強(qiáng)的

          服務(wù)接口 312

          9.5.2 使用原始的

          TransactionProxyFactoryBean 313

          9.5.3 基于tx/aop命名空間的配置 315

          9.6 使用注解配置聲明式事務(wù) 318

          9.6.1 使用@Transactional注解 318

          9.6.2 通過AspectJ LTW引入事務(wù)

          切面 322

          9.7 集成特定的應(yīng)用服務(wù)器 323

          9.7.1 BEA WebLogic 324

          9.7.2 BEA WebLogic 324

          9.8 小結(jié) 324

          第10章 Spring的事務(wù)管理難點(diǎn)剖析 325

          10.1 DAO和事務(wù)管理的牽絆 326

          10.1.1 JDBC訪問數(shù)據(jù)庫 326

          10.1.2 Hibernate訪問數(shù)據(jù)庫 328

          10.2 應(yīng)用分層的迷惑 330

          10.3 事務(wù)方法嵌套調(diào)用的迷茫 334

          10.3.1 Spring事務(wù)傳播機(jī)制回顧 334

          10.3.2 相互嵌套的服務(wù)方法 335

          10.4 多線程的困惑 338

          10.4.1 Spring通過單實(shí)例化Bean

          簡化多線程問題 338

          10.4.2 啟動獨(dú)立線程調(diào)用事務(wù)方法 338

          10.5 聯(lián)合軍種作戰(zhàn)的混亂 340

          10.5.1 Spring事務(wù)管理器的應(yīng)對 340

          10.5.2 Hibernate+Spring JDBC

          混合框架的事務(wù)管理 341

          10.6 特殊方法成漏網(wǎng)之魚 345

          10.6.1 哪些方法不能實(shí)施Spring AOP

          事務(wù) 345

          10.6.2 事務(wù)增強(qiáng)遺漏實(shí)例 345

          10.7 數(shù)據(jù)連接泄漏 349

          10.7.1 底層連接資源的訪問問題 349

          10.7.2 Spring JDBC數(shù)據(jù)連接泄漏 350

          10.7.3 通過DataSourceUtils獲取

          數(shù)據(jù)連接 353

          10.7.4 通過DataSourceUtils獲取

          數(shù)據(jù)連接 355

          10.7.5 JdbcTemplate如何做到對連接

          泄漏的免疫 357

          10.7.6 使用TransactionAwareData

          SourceProxy 357

          10.7.7 其他數(shù)據(jù)訪問技術(shù)的等價類 358

          10.8 小結(jié) 359

          第11章 使用Spring JDBC訪問數(shù)據(jù)庫 361

          11.1 使用Spring JDBC 362

          11.1.1 JDBCTemplate小試牛刀 362

          11.1.2 在DAO中使用JDBCTemplate 363

          11.2 基本的數(shù)據(jù)操作 364

          11.2.1 更改數(shù)據(jù) 364

          11.2.2 返回數(shù)據(jù)庫的表自增主鍵值 367

          11.2.3 批量更改數(shù)據(jù) 369

          11.2.4 查詢數(shù)據(jù) 370

          11.2.5 查詢單值數(shù)據(jù) 373

          11.2.6 調(diào)用存儲過程 375

          11.3 BLOB/CLOB類型數(shù)據(jù)的操作 377

          11.3.1 如何獲取本地數(shù)據(jù)連接 377

          11.3.2 相關(guān)的操作接口 379

          11.3.3 插入Lob類型的數(shù)據(jù) 380

          11.3.4 以塊數(shù)據(jù)方式讀取Lob數(shù)據(jù) 383

          11.3.5 以流數(shù)據(jù)方式讀取Lob數(shù)據(jù) 383

          11.4 自增鍵和行集 384

          11.4.1 自增鍵的使用 384

          11.4.2 如何規(guī)劃主鍵方案 386

          11.4.3 以行集返回數(shù)據(jù) 388

          11.5 其他類型的JDBCTemplate 389

          11.5.1 NamedParameterJDBCTemplate 389

          11.5.2 SimpleJDBCTemplate 391

          11.6 以O(shè)O方式訪問數(shù)據(jù)庫 391

          11.6.1 使用MappingSqlQuery查詢

          數(shù)據(jù) 391

          11.6.2 使用SqlUpdate更新數(shù)據(jù) 393

          11.6.3 使用StoredProcedure執(zhí)行存儲

          過程 394

          11.6.4 SqlFunction類 396

          11.7 小結(jié) 396

          第12章 整合其他ORM框架 398

          12.1 Spring整合ORM技術(shù) 399

          12.2 在Spring中使用Hibernate 400

          12.2.1 配置SessionFactory 400

          12.2.2 使用HibernateTemplate 403

          12.2.3 處理LOB類型數(shù)據(jù) 407

          12.2.4 添加Hibernate事件監(jiān)聽器 409

          12.2.5 使用原生Hibernate API 409

          12.2.6 使用注解配置 410

          12.2.7 事務(wù)處理 412

          12.2.8 延遲加載的問題 413

          12.3 在Spring中使用myBatis 414

          12.3.1 配置SqlMapClient 415

          12.3.2 在Spring配置myBatis 416

          12.3.3 編寫myBatis的DAO 417

          12.5 DAO層設(shè)計(jì) 420

          12.5.1 DAO基類的設(shè)計(jì) 421

          12.5.2 查詢接口方法的設(shè)計(jì) 423

          12.5.3 分頁查詢接口設(shè)計(jì) 424

          12.6 小結(jié) 425

          第4篇 業(yè)務(wù)層及Web層技術(shù)

          第13章 任務(wù)調(diào)度和異步執(zhí)行器 428

          13.1 任務(wù)調(diào)度概述 429

          13.2 Quartz快速進(jìn)階 429

          13.2.1 Quartz基礎(chǔ)結(jié)構(gòu) 430

          13.2.2 使用SimpleTrigger 432

          13.2.3 使用CronTrigger 434

          13.2.4 使用Calendar 437

          13.2.5 任務(wù)調(diào)度信息存儲 439

          13.3 在Spring中使用Quartz 442

          13.3.1 創(chuàng)建JobDetail 442

          13.3.2 創(chuàng)建Trigger 444

          13.3.3 創(chuàng)建Scheduler 446

          13.4 Spring中使用JDK Timer 447

          13.4.1 Timer和TimerTask 448

          13.4.2 Spring對JDK Timer的支持 450

          13.5 Spring對JDK 5.0 Executor的

          支持 451

          13.5.1 了解JDK 5.0的Executor 452

          13.5.2 Spring對Executor所提供的

          抽象 454

          13.6 實(shí)際應(yīng)用中的任務(wù)調(diào)度 455

          13.6.1 如何產(chǎn)生任務(wù) 456

          13.6.2 任務(wù)調(diào)度對應(yīng)用程序集群的

          影響 457

          13.6.3 任務(wù)調(diào)度云 458

          13.6.4 Web應(yīng)用程序中調(diào)度器的

          啟動和關(guān)閉問題 460

          13.7 小結(jié) 462

          第14章 使用OXM進(jìn)行對象XML映射 463

          14.1 認(rèn)識XML解析技術(shù) 464

          14.1.1 什么是XML 464

          14.1.2 XML的處理技術(shù) 464

          14.2 XML處理利器:XStream 466

          14.2.1 XStream概述 466

          14.2.2 快速入門 466

          14.2.3 使用XStream別名 469

          14.2.4 XStream轉(zhuǎn)換器 470

          14.2.5 XStream注解 472

          14.2.6 流化對象 474

          14.2.7 持久化API 475

          14.2.8 額外功能:處理JSON 476

          14.3 其他常見O/X Mapping開源項(xiàng)目 478

          14.3.1 JAXB 478

          14.3.2 XMLBeans 482

          14.3.3 Castor 485

          14.3.4 JiBX 490

          14.3.5 總結(jié)比較 493

          14.4 與Spring OXM整合 494

          14.4.1 Spring OXM概述 494

          14.4.2 整合OXM實(shí)現(xiàn)者 496

          14.4.3 如何在Spring中進(jìn)行配置 497

          14.4.4 Spring OXM 簡單實(shí)例 499

          14.5 小結(jié) 501

          第15章 Spring MVC 503

          15.1 Spring MVC概述 504

          15.1.1 體系結(jié)構(gòu) 504

          15.1.2 配置DispatcherServlet 505

          15.1.3 一個簡單的實(shí)例 510

          15.2 注解驅(qū)動的控制器 514

          15.2.1 使用@RequestMapping映射

          請求 514

          15.2.2 請求處理方法簽名概述 518

          15.2.3 處理方法簽名詳細(xì)說明 519

          15.2.4 使用HttpMessageConverter<T> 523

          15.2.5 處理模型數(shù)據(jù) 532

          15.3 處理方法的數(shù)據(jù)綁定 538

          15.3.1 數(shù)據(jù)綁定流程剖析 539

          15.3.2 數(shù)據(jù)轉(zhuǎn)換 539

          15.3.3 數(shù)據(jù)格式化 545

          15.3.4 數(shù)據(jù)校驗(yàn) 549

          15.4 視圖和視圖解析器 558

          15.4.1 認(rèn)識視圖 558

          15.4.2 認(rèn)識視圖解析器 560

          15.4.3 JSP和JSTL 561

          15.4.4 模板視圖 565

          15.4.5 Excel 569

          15.4.6 PDF 570

          15.4.7 輸出XML 572

          15.4.8 輸出JSON 573

          15.4.9 使用XmlViewResolver 573

          15.4.10 使用ResourceBundle

          ViewResolver 574

          15.4.11 混合使用多種視圖技術(shù) 575

          15.5 本地化解析 577

          15.5.1 本地化概述 577

          15.5.2 使用CookieLocaleResolver 578

          15.5.3 使用SessionLocaleResolver 579

          15.5.4 使用LocaleChangeInterceptor 579

          15.6 文件上傳 579

          15.6.1 配置MultipartResolver 580

          15.6.2 編寫控制器和文件上傳表單頁面 580

          15.7 雜項(xiàng) 581

          15.7.1 靜態(tài)資源處理 581

          15.7.2 裝配攔截器 586

          15.7.3 異常處理 587

          15.8 小結(jié) 589

          第5篇 測試及實(shí)戰(zhàn)

          第16章 實(shí)戰(zhàn)型單元測試 592

          16.1 單元測試概述 593

          16.1.1 為什么需要單元測試 593

          16.1.2 單元測試之誤解 594

          16.1.3 單元測試之困境 595

          16.1.4 單元測試基本概念 596

          16.2 JUnit 4快速進(jìn)階 600

          16.2.1 JUnit 4概述 600

          16.2.2 JUnit 4生命周期 601

          16.2.3 使用JUnit 4 601

          16.3 模擬利器Mockito 608

          16.3.1 模擬測試概述 608

          16.3.2 創(chuàng)建Mock對象 608

          16.3.3 設(shè)定Mock對象的期望行為及

          返回值 609

          16.3.4 驗(yàn)證交互行為 611

          16.4 測試整合之王Unitils 612

          16.4.1 Unitils概述 612

          16.4.2 集成Spring 615

          16.4.3 集成Hibernate 618

          16.4.4 集成Dbunit 619

          16.4.5 自定義擴(kuò)展模塊 620

          16.5 使用Unitils測試DAO層 620

          16.5.1 數(shù)據(jù)庫測試的難點(diǎn) 621

          16.5.2 擴(kuò)展Dbunit用Excel準(zhǔn)備數(shù)據(jù) 621

          16.5.3 測試實(shí)戰(zhàn) 624

          16.6 使用unitils測試Service層 634

          16.7 測試Web層 639

          16.7.1 對LoginController進(jìn)行單元

          測試 640

          16.7.2 使用Spring Servlet API模擬

          對象 641

          16.7.3 使用Spring RestTemplate測試 642

          16.7.4 使用Selenium測試 644

          16.8 小結(jié) 647

          第17章 實(shí)戰(zhàn)案例開發(fā) 648

          17.1 論壇案例概述 649

          17.1.1 論壇整體功能結(jié)構(gòu) 649

          17.1.2 論壇用例描述 649

          17.1.3 主要功能流程描述 651

          17.2 系統(tǒng)設(shè)計(jì) 655

          17.2.1 技術(shù)框架選擇 655

          17.2.2 Web目錄結(jié)構(gòu)及類包結(jié)構(gòu)規(guī)劃 656

          17.2.3 單元測試類包結(jié)構(gòu)規(guī)劃 657

          17.2.4 系統(tǒng)的結(jié)構(gòu)圖 657

          17.2.5 PO的類設(shè)計(jì) 658

          17.2.6 持久層設(shè)計(jì) 659

          17.2.7 服務(wù)層設(shè)計(jì) 659

          17.2.8 Web層設(shè)計(jì) 660

          17.2.9 數(shù)據(jù)庫設(shè)計(jì) 661

          17.3 開發(fā)前的準(zhǔn)備 663

          17.4 持久層開發(fā) 664

          17.4.1 PO類 664

          17.4.2 DAO基類 666

          17.4.3 通過擴(kuò)展基類所定義DAO類 671

          17.4.4 DAO Bean的裝配 672

          17.4.5 使用Hibernate二級緩存 674

          17.5 對持久層進(jìn)行測試 676

          17.5.1 配置Unitils測試環(huán)境 676

          17.5.2 準(zhǔn)備測試數(shù)據(jù)庫及測試數(shù)據(jù) 677

          17.5.3 編寫DAO測試基類 678

          17.5.4 編寫B(tài)oardDao測試用例 678

          17.6 服務(wù)層開發(fā) 680

          17.6.1 UserService的開發(fā) 680

          17.6.2 ForumService的開發(fā) 682

          17.6.3 服務(wù)類Bean的裝配 685

          17.7 對服務(wù)層進(jìn)行測試 686

          17.7.1 編寫Service測試基類 687

          17.7.2 編寫ForumService測試用例 687

          17.8 Web層開發(fā) 689

          17.8.1 BaseController的基類 689

          17.8.2 用戶登錄和注銷 691

          17.8.3 用戶注冊 692

          17.8.4 論壇管理 694

          17.8.5 論壇普通功能 696

          17.8.6 分頁顯示論壇版塊的主題帖子 698

          17.8.7 web.xml配置 702

          17.8.8 Spring MVC配置 704

          17.9 對Web層進(jìn)行測試 705

          17.9.1 編寫Web測試基類 705

          17.9.2 編寫ForumManageController

          測試用例 706

          17.10 部署和運(yùn)行應(yīng)用 707

          17.11 小結(jié) 710

          以下內(nèi)容詳見本書配書光盤:

          附錄A JavaMail發(fā)送郵件 711

          附錄B 在Spring中開發(fā)Web Service 738

          陳雄華,2002年畢業(yè)于廈門大學(xué)計(jì)算機(jī)與信息工程學(xué)院,獲碩士學(xué)位。是寶寶淘科技有限公司的創(chuàng)始人之一(www.baobaotao.com)。這是一個服務(wù)于全國母嬰用戶的綜合性網(wǎng)站,作者負(fù)責(zé)網(wǎng)站整體框架設(shè)計(jì)牲及核心代碼開發(fā)的工作。技術(shù)開發(fā)之余,常將經(jīng)驗(yàn)所得行諸于文字,作者是天極網(wǎng)、IT168的專欄作者,在各大技術(shù)網(wǎng)站、報刊雜志發(fā)表過數(shù)十篇技術(shù)文章,廣受讀者好評。于2005年出版《精通JBuilder 2005》,本書是2005年最暢銷技術(shù)圖書之一。

          2006年畢業(yè)于集美大學(xué)軟件工程專業(yè),獲取學(xué)士學(xué)位。資深軟件工程師,精通Spring等優(yōu)秀開源技術(shù)在企業(yè)的應(yīng)用開發(fā),主要研究方向包括業(yè)務(wù)基礎(chǔ)平臺、BPM、智能報表、分布式等技術(shù)。

          瀏覽 11
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  9·1成长视频蘑菇视频大全 | 成人精品免费 | 国语精品 | 水蜜桃免费在线视频网站 | 精品少妇无码视频 |