SSH開發(fā)實(shí)戰(zhàn)教程(Spring+Struts 2+Hibernate)
定 價(jià):65 元
- 作者:李西明 陳立為
- 出版時(shí)間:2021/6/1
- ISBN:9787115529725
- 出 版 社:人民郵電出版社
- 中圖法分類:TP312.8
- 頁碼:300
- 紙張:
- 版次:01
- 開本:16開
本書詳細(xì)講解了當(dāng)前JavaEE開發(fā)流行的SSH框架,涵蓋Hibernate、Struts2、Spring三大塊知識(shí),以及它們之間的整合和實(shí)戰(zhàn)項(xiàng)目案例。
全書共18章,第1-4章是Hibernate部分,第5-11章為struts2部分,第12-16章為Spring框架部分,第17章為SSH三大框架整合,介紹了整合原理,整合流程,第18章為實(shí)戰(zhàn)項(xiàng)目。
Java EE的輕量級(jí)開發(fā)主要有兩種框架組合方式SSH與SSM。SSH框架簡(jiǎn)單,當(dāng)前的互聯(lián)網(wǎng)開發(fā)采用SSH框架較多,因此要學(xué)習(xí)Java EE,SSH框架是必學(xué)的技術(shù)。
本書的配套資源豐富,提供下載。
華南農(nóng)業(yè)大學(xué)數(shù)學(xué)與信息學(xué)院計(jì)算機(jī)系計(jì)算機(jī)網(wǎng)絡(luò)教研室高級(jí)工程師。主講《Java程序設(shè)計(jì)》《信息安全數(shù)學(xué)基礎(chǔ)》等本科及研究生課程。 主持、參與十余項(xiàng)國家、省部級(jí)項(xiàng)目。
第 1章 Hibernate入門 1
1.1 SSH概述 1
1.2 Hibernate簡(jiǎn)介 1
1.3 第 一個(gè)Hibernate項(xiàng)目 3
1.3.1 創(chuàng)建項(xiàng)目并導(dǎo)入JAR包 4
1.3.2 創(chuàng)建數(shù)據(jù)庫及表 4
1.3.3 創(chuàng)建持久化類 4
1.3.4 創(chuàng)建映射文件 5
1.3.5 創(chuàng)建核心配置文件 6
1.3.6 創(chuàng)建測(cè)試類進(jìn)行增刪改查操作 6
1.4 映射文件詳解 10
1.5 配置文件詳解 12
1.5.1 基本配置 12
1.5.2 配置c3p0連接池 12
1.6 Hibernate持久化對(duì)象的狀態(tài) 13
1.6.1 持久化對(duì)象的狀態(tài) 13
1.6.2 持久化對(duì)象狀態(tài)轉(zhuǎn)換 13
1.7 Hibernate的核心接口簡(jiǎn)介 15
1.7.1 Configuration接口 15
1.7.2 SessionFactory接口 15
1.7.3 Session接口 16
1.7.4 Transaction接口 18
上機(jī)練習(xí) 18
思考題 19
第 2章 HQL與Criteria查詢 20
2.1 HQL查詢概述 20
2.1.1 HQL基本語法 20
2.1.2 HQL語句的執(zhí)行 21
2.1.3 HQL查詢條件中使用參數(shù) 22
2.1.4 HQL給參數(shù)賦值的其他方法 24
2.1.5 HQL模糊查詢與動(dòng)態(tài)查詢 26
2.1.6 HQL投影查詢 27
2.1.7 HQL分頁查詢 28
2.1.8 HQL聚合函數(shù) 29
2.1.9 HQL分組查詢 30
2.1.10 使用別名 30
2.2 Criteria查詢 31
2.2.1 Criteria簡(jiǎn)單查詢 31
2.2.2 Criteria多條件查詢 32
2.2.3 Criteria分頁查詢 33
上機(jī)練習(xí) 34
思考題 34
第3章 Hibernate關(guān)聯(lián)映射 35
3.1 實(shí)體對(duì)象的三種關(guān)聯(lián)關(guān)系 35
3.1.1 單向關(guān)聯(lián)與雙向關(guān)聯(lián) 35
3.1.2 一對(duì)多關(guān)聯(lián)映射 35
3.1.3 多對(duì)多關(guān)聯(lián)關(guān)系映射 40
3.2 關(guān)聯(lián)關(guān)系中的反轉(zhuǎn)與級(jí)聯(lián) 44
3.2.1 反轉(zhuǎn)操作 44
3.2.2 級(jí)聯(lián)操作 45
3.3 延遲加載 50
3.3.1 類級(jí)別的查詢策略 51
3.3.2 一對(duì)多及多對(duì)多的查詢策略 53
3.3.3 多對(duì)一關(guān)聯(lián)的查詢策略 55
上機(jī)練習(xí) 56
思考題 56
第4章 HQL連接查詢與緩存 57
4.1 HQL連接查詢 57
4.1.1 內(nèi)連接 57
4.1.2 隱式內(nèi)連接 59
4.1.3 外連接 60
4.2 HQL子查詢 62
4.3 HQL操作集合的函數(shù)或?qū)傩浴?3
4.4 一級(jí)緩存 65
4.4.1 一級(jí)緩存的原理 65
4.4.2 Hibernate快照 67
4.4.3一級(jí)緩存的常用操作 68
4.5 二級(jí)緩存 70
4.5.1 二級(jí)緩存的原理 71
4.5.2 二級(jí)緩存的配置和使用 71
上機(jī)練習(xí) 73
思考題 73
第5章 Struts 2入門 74
5.1 Struts2簡(jiǎn)介 74
5.1.1 MVC設(shè)計(jì)模式 74
5.1.2 Struts2的優(yōu)點(diǎn) 75
5.1.3 Struts2的開發(fā)環(huán)境搭建 75
5.2 第 一個(gè)Struts2項(xiàng)目 77
5.3 Struts2實(shí)現(xiàn)登錄 80
5.4 Struts2的執(zhí)行流程 82
上機(jī)練習(xí) 83
思考題 83
第6章 Struts2配置文件 84
6.1 配置文件簡(jiǎn)介 84
6.1.1 認(rèn)識(shí)struts.xml文件結(jié)構(gòu) 84
6.1.2 配置常量 85
6.1.3 include的配置 86
6.2 配置Action 86
6.2.1 創(chuàng)建Action類 86
6.2.2 配置Action類 87
6.2.3 Action訪問Servlet API對(duì)象 88
6.2.4 動(dòng)態(tài)方法調(diào)用 94
6.2.5 使用通配符簡(jiǎn)化配置 97
6.2.6 配置默認(rèn)的Action 99
6.4 Action獲取請(qǐng)求參數(shù) 99
6.4.1 屬性驅(qū)動(dòng) 99
6.4.2 模型驅(qū)動(dòng) 103
6.5 Result的配置 104
6.5.1 Result元素結(jié)構(gòu) 104
6.5.2 常用結(jié)果類型 104
6.5.3 動(dòng)態(tài)結(jié)果 105
6.5.4 全局結(jié)果 107
6.6 各種配置項(xiàng)的順序 107
上機(jī)練習(xí) 108
思考題 108
第7章 Struts2攔截器 109
7.1 攔截器原理 109
7.1.1 攔截器基本知識(shí) 109
7.1.2 攔截器的工作方式 109
7.2 攔截器的配置 110
7.2.1配置攔截器 110
7.2.2 攔截器的返回值 112
7.3 攔截器的種類 112
7.4 自定義攔截器 112
7.4.1 自定義攔截器的實(shí)現(xiàn) 112
7.4.2 權(quán)限攔截器 113
上機(jī)練習(xí) 116
思考題 116
第8章 Struts2標(biāo)簽庫 117
8.1 Struts2標(biāo)簽庫簡(jiǎn)介 117
8.1.1 Struts2標(biāo)簽庫的分類 117
8.1.2 Struts2標(biāo)簽庫的導(dǎo)入 117
8.2 Struts2控制標(biāo)簽 118
8.2.1 標(biāo)簽 118
8.2.2 標(biāo)簽 118
8.3 Struts2數(shù)據(jù)標(biāo)簽 121
8.3.1 標(biāo)簽 121
8.3.2 日期標(biāo)簽 121
8.4 Struts2的主題 122
8.5 Struts2的表單標(biāo)簽 122
8.5.1 和標(biāo)簽 123
8.5.2 和標(biāo)簽 123
8.5.3 標(biāo)簽 123
8.5.4 標(biāo)簽 123
8.5.5 標(biāo)簽 125
8.5.6 標(biāo)簽 126
8.5.7 標(biāo)簽 127
8.5.8 標(biāo)簽 127
8.5.9 標(biāo)簽 128
8.5.10 標(biāo)簽 129
8.5.11 標(biāo)簽 129
8.5.12 標(biāo)簽數(shù)據(jù)來自后臺(tái) 130
8.6 Struts2的非表單標(biāo)簽的 132
上機(jī)練習(xí) 133
思考題 133
第9章 OGNL表達(dá)式與值!134
9.1 OGNL表達(dá)式 134
9.1.1 OGNL的概念 134
9.1.2 使用OGNL訪問對(duì)象方法 138
9.1.3 OGNL訪問集合對(duì)象 140
9.1.4 訪問ActionContext中的數(shù)據(jù) 142
9.2 值!143
9.2.1 值棧的概念 143
9.2.2 值棧的應(yīng)用 143
上機(jī)練習(xí) 143
思考題 143
第 10章 Struts2關(guān)鍵技術(shù) 144
10.1 數(shù)據(jù)類型轉(zhuǎn)換 144
10.1.1 默認(rèn)類型轉(zhuǎn)換 144
10.1.2 自定義類型轉(zhuǎn)換器 146
10.1.3 多種日期格式的轉(zhuǎn)換 149
10.1.4 保存原來的日期格式 150
10.1.5 類型轉(zhuǎn)換異常提示信息改為中文 151
10.2 數(shù)據(jù)驗(yàn)證 152
10.2.1 使用validate方法驗(yàn)證Action中的所有方法 152
10.2.2 對(duì)Action中指定方法執(zhí)行前的驗(yàn)證 154
10.2.3 Struts2驗(yàn)證框架 157
10.3 文件上傳 162
10.3.1 文件上傳概述 162
10.3.2 單個(gè)文件上傳實(shí)例 163
10.3.3 限制文件的大小和類型 166
10.3.4 多文件上傳 168
10.4 文件下載 170
10.4.1 文件下載的概述 170
10.4.2 文件下載案例 171
10.4.3 文件名為中文的下載 172
上機(jī)練習(xí) 173
思考題 173
第 11章 Struts2與Ajax 174
11.1 使用Stream類型的結(jié)果映射 174
11.2 使用JSON類型的結(jié)果映射 176
11.3 Ajax綜合案例 179
上機(jī)練習(xí) 182
第 12章 Spring入門 183
12.1 Spring概述 183
12.1.1 Spring體系結(jié)構(gòu) 183
12.1.2 Spring 的開發(fā)環(huán)境 184
12.2 第 一個(gè)Spring 程序 185
上機(jī)練習(xí) 188
思考題 188
第 13章 Spring控制反轉(zhuǎn) 189
13.1 依賴注入 189
13.2 Spring配置文件中Bean的配置 192
13.3 Bean的作用域 192
13.4 基于xml的依賴注入 194
13.4.1 設(shè)值注入 194
13.4.2 構(gòu)造注入 196
13.4.3 使用p命名空間實(shí)現(xiàn)屬性值注入 197
13.4.4 注入各種數(shù)據(jù)類型的屬性值 197
13.4.5 內(nèi)部Bean注入 202
13.4.5 抽象Bean 注入 203
13.5 自動(dòng)裝配 205
13.5.1 byName 方式自動(dòng)注入 205
13.5.2 byType 方式自動(dòng)注入 206
13.6 Spring配置文件的拆分 207
13.6.1 拆分為若干個(gè)平等關(guān)系的配置文件 208
13.6.2 拆分為父子關(guān)系的若干個(gè)配置文件 208
13.7 基于注解的依賴注入 208
13.7.1 使用注解@Component定義Bean 209
13.7.2 Bean的作用域@Scope 210
13.7.3 基本類型屬性注入@Value 210
13.7.4 按類型注入域?qū)傩訞Autowired 211
13.7.5 按名稱注入域?qū)傩訞Autowired 與@Qualifier 212
13.7.6 域?qū)傩宰⒔釦Resource 213
13.7.7 xml配置方式與注解方式的比較 214
上機(jī)練習(xí) 215
思考題 215
第 14章 Spring面向切面編程 216
14.1 傳統(tǒng)的編程模式弊端 216
14.2 AOP初試身手 219
14.3 AspectJ實(shí)現(xiàn)AOP 222
14.3.1 異常拋出增強(qiáng) 223
14.3.2 環(huán)繞增強(qiáng) 224
14.4 使用注解實(shí)現(xiàn)通知 226
14.5 使用xml配置定義切面 227
14.5.1 切面不獲取切點(diǎn)參數(shù) 228
14.5.2 切面獲取切點(diǎn)參數(shù)與返回值 229
上機(jī)練習(xí) 232
思考題 232
第 15章 Spring操作數(shù)據(jù)庫 233
15.1 使用JdbcTemplate模板操作數(shù)據(jù)庫 233
15.2 數(shù)據(jù)源的配置 239
15.2.1 DBCP數(shù)據(jù)源BasicDataSource的使用 239
15.2.2 C3P0數(shù)據(jù)源ComboPooledDataSource的使用 240
15.2.3 使用屬性文件讀取數(shù)據(jù)庫連接信息 241
上機(jī)練習(xí) 243
思考題 243
第 16章 Spring事務(wù)管理 244
16.1 Spring 事務(wù)管理接口 244
16.1.1 事務(wù)管理器接口PlatformTransactionManager 244
16.1.2 事務(wù)定義接口TransactionDefinition 244
16.2 Spring事務(wù)管理的實(shí)現(xiàn) 245
16.2.1 沒有事務(wù)管理的情況分析 245
16.2.2 利用xml配置實(shí)現(xiàn)事務(wù)管理 248
16.2.3 利用@Transactional注解實(shí)現(xiàn)事務(wù)管理 251
16.2.4 在業(yè)務(wù)層實(shí)現(xiàn)事務(wù)管理 253
上機(jī)練習(xí) 255
思考題 255
第 17章 SSH三大框架整合 256
17.1 SSH框架整合原理 256
17.2 Spring整合Hibernate 256
17.3 Spring整合Struts2 265
上機(jī)練習(xí) 269
思考題 269
第 18章 SSH項(xiàng)目實(shí)戰(zhàn) 270
18.1 項(xiàng)目需求分析 270
18.2 數(shù)據(jù)庫設(shè)計(jì) 270
18.3 搭建SSH框架 272
18.4 首頁與用戶登錄模塊 275
18.5 商品查詢與分頁模塊 288
18.6 商品詳情模塊 298
18.7 購物車模塊 304
18.8 訂單處理與模擬結(jié)算模塊 315
上機(jī)練習(xí) 325
思考題 325