Java EE核心框架實戰 第2版

Java EE核心框架實戰 第2版 pdf epub mobi txt 電子書 下載 2025

高洪岩 著
圖書標籤:
  • Java EE
  • Java
  • 企業級開發
  • J2EE
  • Servlet
  • JSP
  • 數據庫
  • Web開發
  • 框架
  • 實戰
想要找書就要到 靜思書屋
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!
齣版社: 人民郵電齣版社
ISBN:9787115463616
版次:2
商品編碼:12172461
品牌:異步圖書
包裝:平裝
開本:16開
齣版時間:2017-09-01
用紙:膠版紙
頁數:518
正文語種:中文

具體描述

編輯推薦

本書宗旨
提高讀者學習Java EE的效率,增強其項目實戰能力。本書摒棄瞭軟件公司中不常用或不實用的技術,而是采用近200個開發案例,為讀者講解瞭開發商業軟件的知識,幫助讀者進行“精要”式的學習,汲取Java EE的思想,正確地進行項目實戰。

本書特色
不留遺漏——覆蓋主流Java EE輕量級框架
直擊要害——實戰化案例精準定位開發細節
學以緻用——精要式項目確保開發/ 學習不脫節
潛移默化——研磨式知識講解參透技術要點
提升效率——垂直式技術精解不繞彎路
循序提升——漸進式知識點統排確保連貫
以點概麵——解決方案式項目,知識獨立卻又體係完整
成功案例——全麵經過項目過程錘煉,提升學習/ 開發效率

內容簡介

《Java EE核心框架實戰(第2版)》的宗旨是提高讀者學習Java EE的效率,增強其項目實戰能力。為此,本書摒棄瞭軟件公司中不常用或不實用的技術,而是采用近200個開發案例,為讀者講解瞭開發商業軟件的知識,幫助讀者進行“精要”式的學習,汲取Java EE的思想,正確地進行項目實戰。
《Java EE核心框架實戰(第2版)》涵蓋瞭MyBatis 3、Struts 2、Ajax、JSON、jQuery、Spring 4 MVC、Hibernate 5、Spring 4等主流Java EE框架的核心開發技術,介紹瞭MVC框架的原理實現、上傳、下載、數據驗證、國際化、多模塊分組開發、轉發/重定嚮、JSON的解析;將Ajax及JSON和MVC框架進行整閤開發;ORM框架的CURD操作以及MyBatis和Hibernate中的映射文件使用。本書還使用大量篇幅介紹瞭Spring 4中的核心技術DI與AOP,以及企業中常用框架的整閤開發,框架包含Struts 2、Spring 4 MVC、MyBatis 3、Hibernate 5、Spring 4整閤開發等內容。
《Java EE核心框架實戰(第2版)》語言簡潔,示例豐富,可幫助讀者迅速掌握使用主流開源Java EE框架進行開發所需的各種技能。本書適閤具有一定Java編程基礎的讀者,以及使用Java進行軟件開發、測試的從業人員閱讀。

作者簡介

高洪岩,畢業於東北電力大學計算機科學與技術專業,獲得軟件工程碩士學位。曾任職
於大連東軟軟件公司、北京中軟、中國海洋石油集團、中國石化,現工作於教育與技術
之間,喜歡分享,快樂學習。

目錄

第1章 MyBatis 3操作數據庫 1
1.1 MyBatis介紹 1
1.2 MyBatis基本使用 4
1.2.1 使用XML配置文件創建SqlSessionFactory對象 5
1.2.2 SqlSessionFactoryBuilder和SqlSessionFactory類信息 7
1.2.3 使用MyBatis Generator工具逆嚮操作Oracle數據庫 7
1.2.4 使用MyBatis Generator工具逆嚮操作MySQL數據庫 14
1.3 使用MyBatis實現CURD-2種數據庫(Oracle-MySQL) 16
1.3.1 針對Oracle的CURD 17
1.3.2 針對MySQL的CURD 23
1.3.3 SQL映射文件中namespace命名空間的作用 24
1.4 MyBatis核心對象的生命周期與封裝 26
1.4.1 創建GetSqlSessionFactory.java類 27
1.4.2 創建GetSqlSession.java類 28
1.4.3 創建DBOperate.java類 29
1.4.4 創建userinfoMapping.xml映射文件 29
1.4.5 創建連接數據庫mybatis-config.xml配置文件 30
1.4.6 創建名稱為test的Servlet對象 30
1.4.7 添加記錄及異常迴滾的測試 31
1.4.8 刪除記錄 33
1.4.9 更改記錄 34
1.4.10 查詢單條記錄 35
1.4.11 查詢多條記錄 36
第2章 MyBatis 3必備開發技能 37
2.1 使用getMapper()麵嚮接口編程 37
2.1.1 接口-SQL映射的對應關係 37
2.1.2 創建Userinfo.java實體類 38
2.1.3 創建UserinfoMapper.java接口 38
2.1.4 創建SQL映射文件UserinfoMapper.xml 39
2.1.5 增加記錄insert的操作代碼 39
2.1.6 查詢全部selectAll的操作代碼 41
2.1.7 查詢單條記錄selectById的操作代碼 41
2.1.8 修改記錄updateById的操作代碼 42
2.1.9 刪除記錄deleteById的操作代碼 43
2.2 使用typeAliases配置彆名 43
2.2.1 使用typeAlias單獨配置彆名 44
2.2.2 使用package批量配置彆名 44
2.3 使用properties文件保存數據庫信息 46
2.3.1 在mybatis-config.xml配置文件中讀取properties文件中的參數 46
2.3.2 將數據庫信息封裝進properties屬性文件中 47
2.4 與數據源DataSource有關的操作 49
2.4.1 配置多個environment環境 49
2.4.2 什麼是JNDI以及如何從JNDI獲得數據源DataSource 50
2.4.3 如何在MyBatis中使用數據源DataSource 54
2.4.4 在MyBatis中使用HikariCP連接池 57
2.5 多數據庫執行不同SQL語句的支持 60
2.6 多種獲取Mapper的方式 61
2.7 MyBatis3的SQL映射文件與動態SQL 62
2.7.1 標簽 62
2.7.2 標簽 64
2.7.3 使用${}拼接SQL語句 65
2.7.4 插入null值時的處理第1種方法jdbcType 67
2.7.5 插入null值時的處理第2種方法 68
2.7.6 標簽 69
2.7.7 標簽的使用 71
2.7.8 標簽的使用 72
2.7.9 標簽的使用 73
2.7.10 使用標簽對like語句進行適配 77
2.8 插入超大的字符串String文本內容 81
2.9 對查詢的數據進行分頁 84
2.10 批處理SQL語句 86
第3章 Struts 2必備開發技能 88
3.1 使用Struts 2進行登錄功能的開發 88
3.1.1 為什麼要使用MVC 89
3.1.2 準備jar文件 94
3.1.3 創建Web項目、添加jar文件及配置web.xml文件 96
3.1.4 創建控製層Controller文件-Login.java 96
3.1.5 創建業務邏輯層Model文件-UserinfoService.java 97
3.1.6 創建視圖層View文件-login.jsp 98
3.1.7 添加核心配置文件struts.xml及解釋 98
3.1.8 添加ok.jsp和no.jsp登錄結果文件 99
3.1.9 運行項目 99
3.1.10 Struts 2的攔截器 101
3.1.11 Struts 2的數據類型自動轉換 106
3.2 MVC框架的開發模型 112
3.2.1 基礎知識準備1——XML文件的CURD 113
3.2.2 基礎知識準備2——Java的反射 120
3.2.3 實現MVC模型——自定義配置文件 122
3.2.4 實現MVC模型——ActionMapping.java封裝信息 123
3.2.5 實現MVC模型——ResultMapping.java封裝信息 124
3.2.6 實現MVC模型——管理映射信息的ActionMappingManager.java對象 124
3.2.7 實現MVC模型——創建反射Action的ActionManager.java對象 126
3.2.8 實現MVC模型——創建核心控製器ActionServlet.java 127
3.2.9 實現MVC模型——創建Action接口及控製層Controller實現類 129
3.2.10 實現MVC模型——創建視圖層V對應的JSP文件 130
3.2.11 實現MVC模型——在web.xml中配置核心控製器 131
3.2.12 實現MVC模型——運行效果 131
3.3 Struts 2的刷新驗證功能 131
3.3.1 Action接口 132
3.3.2 Validateable和ValidationAware接口 133
3.3.3 TextProvider和LocaleProvider接口 134
3.3.4 使用ActionSupport實現有刷新的驗證 134
3.4 對Struts 2有刷新驗證的示例進行升級 137
3.4.1 加入xml配置來屏蔽自動生成的table/tr/td代碼 137
3.4.2 解決“齣錯信息不能自動顯示”的問題 139
3.5 用標簽顯示全部齣錯信息 142
3.6 齣錯信息進行傳參及國際化 144
3.6.1 創建info_en_US.properties和info_zh_CN.properties屬性文件 144
3.6.2 在JSP文件中顯示國際化的靜態文本 147
3.6.3 在JSP文件中顯示國際化的靜態文本時傳遞參數 149
3.6.4 在Action中使用國際化功能 149
3.7 用實體類封裝URL中的參數——登錄功能的URL封裝 151
3.8 Struts 2中的轉發操作 153
3.8.1 Servlet中的轉發操作 153
3.8.2 Struts 2中的轉發操作 154
3.9 由Action重定嚮到Action——無參數 157
3.9.1 什麼樣的情況下使用重定嚮 157
3.9.2 新建起始控製層Login.java 157
3.9.3 新建目的控製層List.java 157
3.9.4 在struts.xml文件中配置重定嚮的重點 158
3.9.5 新建顯示列錶的JSP文件 159
3.10 由Action重定嚮到Action——有參數 159
3.10.1 什麼樣的情況下需要重定嚮傳遞參數 159
3.10.2 新建起始控製層Login.java文件 159
3.10.3 更改struts.xml配置文件 160
3.10.4 新建目的控製層List.java文件 161
3.10.5 用JSTL和EL在JSP文件中打印數據 162
3.11 讓Struts 2支持多模塊多配置文件開發 164
3.11.1 新建4個模塊的控製層 164
3.11.2 新建3個模塊的配置文件 165
3.11.3 使用include標記導入多個配置文件 167
3.11.4 創建各模塊使用的JSP文件 167
3.11.5 運行各模塊的效果 168
3.12 在Action中有多個業務方法時的處理 169
3.13 自定義全局result 171
3.13.1 新建全局result實例和控製層代碼 171
3.13.2 聲明全局的result對象 172
3.13.3 部屬項目並運行 172
3.14 在Action中使用servlet的API(緊耦版) 173
3.14.1 將數據放到不同的作用域中 173
3.14.2 從不同作用域中取值 174
3.15 在Action中使用Servlet的API(鬆耦版) 175
3.15.1 新建控製層 175
3.15.2 新建JSP視圖 176
第4章 Struts 2文件的上傳與下載 178
4.1 使用Struts 2進行單文件上傳 178
4.1.1 Struts 2上傳功能的底層依賴 178
4.1.2 新建上傳文件的JSP文件 178
4.1.3 新建上傳文件的控製層Register.java文件 179
4.1.4 Action中File實例的命名規則 180
4.1.5 設置上傳文件的大小 180
4.1.6 設計struts.xml配置文件 180
4.1.7 成功上傳單個文件 181
4.2 使用Struts 2進行多文件上傳 181
4.2.1 新建上傳多個文件的JSP 182
4.2.2 設計上傳的控製層代碼 182
4.2.3 成功上傳多個文件 184
4.3 使用屬性驅動形式的文件上傳 185
4.3.1 創建上傳多個文件的JSP 185
4.3.2 設計上傳文件的控製層 186
4.3.3 新建上傳文件的封裝類 187
4.3.4 將JSP文件中s:file標簽的name屬性進行更改 188
4.3.5 以屬性驅動方式成功上傳多個文件 189
4.4 用Struts 2實現下載文件的功能(支持中文文件名與IE和FireFix兼容) 190
4.4.1 新建下載文件的JSP文件 190
4.4.2 新建下載文件的控製層文件 191
4.4.3 更改struts.xml配置文件 192
4.4.4 成功下載中文文件名的文件 192
第5章 JSON、Ajax和jQuery與Struts 2聯閤使用 193
5.1 JSON介紹 193
5.2 用JSON創建對象 194
5.2.1 JSON創建對象的語法格式 194
5.2.2 在JSP中用JSON創建一個對象 194
5.2.3 運行效果 194
5.3 用JSON創建字符串的限製 195
5.3.1 需要轉義的特殊字符 195
5.3.2 在JSP中對JSON特殊字符進行轉義 195
5.3.3 運行效果 196
5.4 用JSON創建數字類型語法格式 196
5.4.1 在JSP中用JSON創建數字類型 196
5.4.2 運行效果 197
5.5 用JSON創建數組對象的語法格式 197
5.5.1 JSON創建一個數組對象 198
5.5.2 運行效果 198
5.6 用JSON創建嵌套的對象類型 198
5.7 將對象轉成JSON字符串 200
5.7.1 什麼情況下需要將對象轉成JSON字符串 200
5.7.2 使用stringify方法將對象轉成JSON字符串 200
5.8 將對象轉成JSON字符串提交到Action並解析(以post方式提交) 201
5.8.1 在JSP中創建JSON和Ajax對象 201
5.8.2 用Action控製層接收通過Ajax傳遞過來的JSON字符串 202
5.8.3 運行效果 203
5.8.4 在控製颱輸齣的數據 204
5.9 將對象轉成JSON字符串提交到Action並解析(get方式提交) 204
5.9.1 新建創建JSON字符串的JSP文件 204
5.9.2 新建接收JSON字符串的Action控製層 205
5.9.3 運行結果 206
5.9.4 在控製颱輸齣的數據 206
5.10 將數組轉成JSON字符串提交到Action並解析(get和post方式提交) 207
5.10.1 在服務器端用get方法解析JSON字符串 208
5.10.2 在服務器端用post方法解析JSON字符串 209
5.10.3 運行結果 210
5.10.4 在控製颱輸齣的數據 210
5.11 使用Ajax調用Action並生成JSON再傳遞到客戶端(get和post方式
提交) 210
5.11.1 新建具有Ajax提交功能的JSP 211
5.11.2 在Action控製層創建List中存String 213
5.11.3 在Action控製層創建List中存Bean 214
5.11.4 在Action控製層創建Map中存放的String 215
5.11.5 在Action控製層創建Map中存放的Bean 216
5.11.6 單擊不同的button按鈕調用不同的Action 217
5.12 jQuery、JSON和Struts 2 218
5.12.1 jQuery框架的Ajax功能介紹 218
5.12.2 用jQuery的Ajax功能調用遠程action(無返迴結果) 219
5.12.3 jQuery的Ajax方法結構 220
5.12.4 用jQuery的Ajax功能調用遠程action(有返迴結果) 221
5.12.5 用jQuery的Ajax功能調用遠程action並且傳遞JSON格式參數(有返迴值) 223
5.12.6 用jQuery解析從action返迴List中存String的JSON字符串 226
5.13 在服務器端解析復雜結構的JSON對象 228
第6章 用Hibernate 5操作數據庫 230
6.1 Hibernate概述與優勢 230
6.2 持久層、持久化與ORM 231
6.3 用MyEclipse開發第一個Hibernate示例 233
6.3.1 在MyEclipse中創建MyEclipse Database Explorer數據庫連接 233
6.3.2 創建Web項目並添加Hibernate框架 235
6.3.3 開始Hibernate逆嚮 239
6.3.4 數據訪問層DAO與實體類entity的代碼分析 241
6.3.5 使用Hibernate進行持久化 242
6.3.6 映射文件Userinfo.hbm.xml的代碼分析 243
6.3.7 查詢—修改—刪除的操作代碼 245
6.3.8 其他類解釋 247
第7章 Hibernate 5核心技能 248
7.1 工廠類HibernateSessionFactory.java中的靜態代碼塊 248
7.2 SessionFactory介紹 249
7.3 Session介紹 249
7.4 使用Session實現CURD功能 250
7.4.1 數據錶userinfo結構與映射文件 250
7.4.2 創建SessionFactory工廠類 251
7.4.3 添加記錄 251
7.4.4 查詢單條記錄 252
7.4.5 更改記錄 253
7.4.6 刪除記錄 253
7.5 Hibernate使用JNDI技術 254
7.5.1 備份Tomcat/conf路徑下的配置文件 254
7.5.2 更改配置文件context.xml 254
7.5.3 更改配置文件web.xml 254
7.5.4 添加Hibernate框架配置的關鍵步驟 255
7.5.5 逆嚮工程 255
7.5.6 支持JNDI的hibernate.cfg.xml配置文件內容 255
7.5.7 創建查詢數據的Servlet 256
7.5.8 部屬項目驗證結果 256
7.6 緩存與實體狀態 256
7.6.1 Hibernate的OID與緩存 256
7.6.2 Hibernate中的對象狀態:瞬時狀態、持久化狀態和遊離狀態 258
7.7 雙嚮一對多在MyEclipse中的實現 258
7.7.1 添加主錶記錄 261
7.7.2 添加子錶記錄 262
7.7.3 更改主錶數據 262
7.7.4 更改子錶數據 262
7.7.5 刪除子錶數據 263
7.7.6 刪除主錶main數據 263
7.7.7 通過主錶獲取子錶數據 264
7.8 Hibernate備忘知識點 265
7.9 對主從錶結構中的HashSet進行排序 267
7.10 延遲加載與load()和get()的區彆 267
7.10.1 主從錶錶結構的設計 267
7.10.2 對省錶和市錶內容的添充 268
7.10.3 更改映射文件 268
7.10.4 新建測試用的Servlet對象 268
7.10.5 更改映射文件Sheng.hbm.xml 269
7.11 Hibernate對Oracle中CLOB字段類型的讀處理 270
7.12 Hibernate中的inverse與cascade的測試 270
第8章 Hibernate 5使用HQL語言進行檢索 275
8.1 Hibernate的檢索方式 275
8.1.1 HQL錶彆名 276
8.1.2 HQL對結果進行排序與list()和iterator()方法的區彆 278
8.1.3 HQL索引參數綁定 281
8.1.4 HQL命名參數綁定與安全性 282
8.1.5 HQL方法鏈的使用 284
8.1.6 HQL中的uniqueResult方法的使用 284
8.1.7 HQL中的where子句與查詢條件 285
8.1.8 查詢日期——字符串格式 287
8.1.9 查詢日期——數字格式 288
8.1.10 分頁的處理 289
8.1.11 HQL中的聚集函數:distinct-count-min-max-sum-avg 290
8.1.12 HQL中的分組查詢 292
第9章 JPA核心技能 294
9.1 什麼是JPA以及為什麼要使用JPA 294
9.2 搭建JPA開發環境與逆嚮 295
9.3 分析逆嚮齣來的Java類 300
9.4 使用IUserinfoDAO.java接口中的方法 301
9.4.1 方法public void save(Userinfo entity)的使用 302
9.4.2 方法public Userinfo findById(Long id)的使用 303
9.4.3 方法public List findByProperty(String propertyName, final Object value, final int... rowStartIdxAndCount)的使用 304
9.4.4 方法public List findByUsername(Object username, int... rowStartIdxAndCount)的使用 304
9.4.5 方法public List findByPassword(Object password, int... rowStartIdxAndCount)的使用 304
9.4.6 方法public List findByAge(Object age, int... rowStartIdxAndCount)的使用 305
9.4.7 方法public List findAll(final int... rowStartIdxAndCount)的使用 305
9.4.8 方法public Userinfo update(Userinfo entity)的使用 305
9.4.9 方法public void delete(Userinfo entity)的使用 306
9.5 JPA核心接口介紹 306
9.5.1 類Persistence 306
9.5.2 JPA中的事務類型 307
9.5.3 接口EntityManagerFactory 308
9.5.4 接口EntityManager 308
9.6 實體類的狀態 308
9.7 使用原生JPA的API實現1個添加記錄的操作 309
9.8 從零開始搭建JPA開發環境 309
9.9 EntityManager核心方法的使用 311
9.9.1 方法void persist(Object entity)保存一條記錄 311
9.9.2  T merge(T entity)方法和 T find(Class entityClass, Object primaryKey)方法 311
9.9.3 方法void remove(Object entity) 312
9.9.4 getReference(Class, Object)方法 312
9.9.5 createNativeQuery(string)方法 315
9.9.6 clear()和contains(Object)方法 317
9.9.7 createQuery(String)方法 319
9.10 雙嚮一對多的CURD實驗 319
9.10.1 逆嚮Main.java和Sub.java實體類 319
9.10.2 創建Main 322
9.10.3 創建Sub 322
9.10.4 更新Main 323
9.10.5 更新Sub 323
9.10.6 刪除Main時默認將Sub也一同刪除 324
9.10.7 從Main加載Sub時默認為延遲加載 324
9.11 JPQL語言的使用 325
9.11.1 參數索引式查詢 325
9.11.2 命名式參數查詢 326
9.11.3 JPQL支持的運算符與聚閤函數與排序 326
9.11.4 is null為空運算符的使用 327
9.11.5 查詢指定字段的示例 327
9.11.6 JPQL語言對日期的判斷 329
9.11.7 JPQL語言中的分頁功能 331
第10章 Spring 4的DI與AOP 332
10.1 Spring介紹 332
10.2 依賴注入 333
10.3 DI容器 333
10.4 AOP的介紹 334
10.5 Spring的架構 334
10.6 一個使用傳統方式保存數據功能的測試 335
10.7 在Spring中創建JavaBean 336
10.7.1 使用xml聲明法創建對象 337
10.7.2 使用Annotation注解法創建對象 340
10.8 DI的使用 350
10.8.1 使用xml聲明法注入對象 350
10.8.2 使用注解聲明法注入對象 352
10.8.3 多實現類的歧義性 353
10.8.4 使用@Autowired注解嚮構造方法參數注入 356
10.8.5 在set方法中使用@Autowired注解 357
10.8.6 使用@Bean嚮工廠方法的參數傳參 358
10.8.7 使用@Autowired(required = false)的寫法 358
10.8.8 使用@Bean注入多個相同類型的對象時齣現異常 360
10.8.9 使用@Bean對JavaBean的id重命名 361
10.8.10 對構造方法進行注入 362
10.8.11 使用p命名空間對屬性進行注入 368
10.8.12 Spring上下文環境的相關知識 370
10.8.13 使用Spring的DI方式保存數據功能的測試 375
10.8.14 BeanFactory與ApplicationContext 377
10.8.15 注入null類型 377
10.8.16 注入Properties類型 378
10.8.17 在DI容器中創建Singleton單例和Prototype多例的JavaBean對象 379
10.8.18 Spring中注入外部屬性文件的屬性值 381
10.9 麵嚮切麵編程AOP的使用 383
10.9.1 AOP的原理之代理設計模式 384
10.9.2 與AOP相關的必備概念 391
10.9.3 麵嚮切麵編程AOP核心案例 395
10.9.4 Strust 2、Spring 4整閤及應用AOP切麵 432
第11章 Struts 2+Hibernate 5+Spring 4整閤 436
11.1 目的 436
11.2 創建數據庫環境 436
11.2.1 新建數據錶userinfo 436
11.2.2 創建序列對象 437
11.3 新建整閤用的Web項目 437
11.4 添加Struts 2框架支持 437
11.4.1 添加Struts 2框架 437
11.4.2 在web.xml文件中注冊Struts 2的過濾器 438
11.4.3 在項目的src目錄下創建struts.xml配置文件 438
11.5 添加Hibernate 5框架支持 439
11.6 添加Spring 4框架支持 440
11.7 創建spring-dao.xml文件 440
11.8 創建spring-service.xml文件 440
11.9 創建spring-controller.xml文件 441
11.10 創建applicationContext.xml文件 441
11.11 在web.xml文件中注冊Spring監聽器 442
11.12 加Spring 4框架後的Web項目結構 443
11.13 創建Hibernate中的實體類與映射文件 444
11.14 創建Hibernate 5的DAO類 445
11.15 創建UserinfoService.java服務對象 445
11.16 新建一個操作userinfo錶數據的Controller控製層 446
11.17 測試成功的結果 447
11.18 測試迴滾的結果 448
第12章 Spring 4 MVC核心技能 450
12.1 Spring 4 MVC介紹 450
12.1.1 Spring 4 MVC核心控製器 451
12.1.2 基於注解的Spring 4 MVC開發 452
12.2 Spring 4 MVC第一個登錄測試 452
12.2.1 添加Spring 4 MVC的依賴jar文件 452
12.2.2 在web.xml中配置核心控製器 453
12.2.3 新建springMVC-servlet.xml配置文件 453
12.2.4 新建相關的JSP文件 453
12.2.5 新建控製層Java類文件 454
12.2.6 部署項目並運行 455
12.2.7 第一個示例的總結 456
12.2.8 Spring MVC取參還能更加方便 456
12.3 執行控製層與限製提交的方式 457
12.3.1 新建控製層ListUsername.java文件 457
12.3.2 新建登錄及顯示數據的JSP文件 458
12.3.3 部署項目並測試 458
12.4 解決多人開發路徑可能重復問題 460
12.4.1 錯誤的情況 460
12.4.2 解決辦法 461
12.5 在控製層中處理指定的提交get或post方式 463
12.5.1 控製層代碼 463
12.5.2 新建JSP文件並運行 464
12.6 控製層重定嚮到控製層——無參數傳遞 465
12.6.1 新建控製層Java文件 465
12.6.2 創建JSP文件並運行項目 466
12.7 控製層重定嚮到控製層——有參數傳遞 467
12.7.1 創建兩個控製層Java文件 467
12.7.2 部署項目並運行 468
12.8 匹配URL路徑執行指定控製層 468
12.8.1 新建控製層文件 468
12.8.2 部署項目並運行 469
12.9 在服務器端取得JSON字符串並解析——方式1 470
12.9.1 在web.xml中配置字符編碼過濾器 470
12.9.2 新建JSP文件 471
12.9.3 新建控製層Java文件 472
12.9.4 添加依賴的jar包文件 472
12.9.5 運行項目 473
12.10 在服務器端取得JSON字符串並解析——方式2 473
12.10.1 新建封裝JSON對象屬性的實體類 473
12.10.2 新建控製層 474
12.10.3 在配置文件中添加注解 474
12.10.4 新建JSP文件 475
12.10.5 添加jacksonJSON解析處理類庫並運行 475
12.10.6 解析不同格式的JSON字符串示例 476
12.11 將URL中的參數轉成實體的示例 478
12.11.1 新建控製層文件 478
12.11.2 新建登錄用途的JSP文件 479
12.11.3 在web.xml中注冊編碼過濾器 479
12.11.4 運行結果 479
12.12 在控製層返迴JSON對象示例 479
12.12.1 新建控製層文件 480
12.12.2 新建JSP文件 480
12.12.3 部署項目並運行 481
12.13 在控製層傳迴JSON字符串示例 482
12.13.1 新建控製層文件 482
12.13.2 新建JSP文件及在配置文件中注冊utf-8編碼處理 482
12.13.3 運行項目 483
12.14 在控製層取得HttpServletRequest和HttpServletResponse對象 483
12.14.1 新建控製層 484
12.14.2 JSP文件中的EL代碼及運行結果 484
12.14.3 直接使用HttpServletResopnse對象輸齣響應字符 484
12.15 通過URL參數訪問指定的業務方法 486
12.15.1 新建控製層文件List.java 486
12.15.2 運行結果 487
12.16 Spring 4 MVC單文件上傳——寫法1 487
12.16.1 新建控製層 487
12.16.2 在配置文件springMVC-servlet.xml中聲明上傳請求 488
12.16.3 創建前颱JSP文件 489
12.16.4 程序運行結果 489
12.17 Spring 4 MVC單文件上傳——寫法2 489
12.18 Spring 4 MVC多文件上傳 490
12.18.1 新建控製層及JSP文件 490
12.18.2 運行結果 491
12.19 Spring 4 MVC支持中文文件名的文件下載 491
12.20 控製層返迴List對象及實體的效果 493
12.20.1 新建控製層文件 493
12.20.2 新建JSP文件 493
12.20.3 更改springMVC-servlet.xml配置文件 494
12.20.4 程序運行結果 494
12.21 控製層ModelMap對象 495
12.21.1 新建控製層 495
12.21.2 JSP文件代碼 496
12.21.3 運行效果 496
12.22 Spring 4 MVC提交的錶單進行手動數據驗證 497
12.22.1 創建控製層文件 497
12.22.2 創建JSP文件 497
12.22.3 運行結果 498

第13章 Spring 4 MVC必備知識 499
13.1 web.xml中的不同配置方法 499
13.1.1 存放於src資源路徑中 499
13.1.2 指定存放路徑 500
13.1.3 指定多個配置文件 500
13.2 路徑中添加通配符的功能 501
13.3 業務邏輯層在控製層中進行注入 502
13.3.1 新建業務邏輯層 502
13.3.2 創建控製層文件 502
13.3.3 設計springMVC-servlet.xml配置文件 502
13.3.4 程序運行結果 503
13.3.5 多個實現類的情況 503
13.4 對象ModelAndView的使用 504
13.4.1 創建控製層及JSP文件 504
13.4.2 程序運行結果 505
13.5 控製層返迴void數據的情況 505
13.5.1 創建控製層及index.jsp文件 505
13.5.2 更改配置文件 506
13.5.3 部署項目運行程序 506
13.6 使用Spring 4 MVC中的注解來操作HttpSession中的對象 507
13.6.1 創建控製層文件PutGetSession.java 507
13.6.2 創建顯示不同作用域中的值的JSP文件 508
13.6.3 部署項目並運行程序 508
第14章 Spring 4 MVC+MyBatis 3+Spring 4整閤 509
14.1 準備Spring 4的JAR包文件 509
14.2 準備MyBatis的JAR包文件 510
14.3 準備MyBatis 3與Spring 4整閤的JAR文件 510
14.4 創建Web項目 510
14.5 配置web.xml文件 511
14.6 配置springMVC-servlet.xml文件 512
14.7 配置MyBatis配置文件 513
14.8 創建MyBatis與映射有關文件 513
14.9 配置applicationContext.xml文件 514
14.10 創建Service對象 516
14.11 創建Controller對象 516
14.12 測試正常的效果 517
14.13 測試迴滾的效果 517
《Java Web開發精粹:從入門到精通》 內容簡介 在快速發展的互聯網時代,Java Web開發憑藉其強大的生態係統、成熟的框架以及廣泛的應用前景,始終占據著舉足輕重的地位。本書旨在為有誌於投身Java Web開發的讀者提供一條清晰的學習路徑,從基礎概念的梳理到核心技術的深入剖析,再到實戰項目的完整演練,力求幫助讀者構建堅實的理論基礎和過硬的實踐能力。我們不追求羅列技術的廣度,而是聚焦於Java Web開發中最具價值、最核心的要素,力求做到“精”與“深”。 第一部分:Java Web開發基石 在進入具體的框架學習之前,我們首先要夯實Java Web開發的基礎。這一部分將帶領讀者迴顧並深化對Java語言核心特性的理解,特彆是在Web開發場景下需要關注的方麵,例如集閤框架、多綫程、IO流、反射機製等。這些看似基礎的知識,卻貫穿於整個Web開發過程中,理解它們的底層原理能夠幫助我們更有效地利用框架,並解決開發中遇到的復雜問題。 接著,我們將深入剖析HTTP協議。HTTP作為Web應用最基礎的通信協議,其請求方法(GET, POST, PUT, DELETE等)、狀態碼、請求頭、響應頭、Cookie、Session等概念的深刻理解,是進行Web開發的前提。我們將通過生動的圖解和實際的抓包分析,幫助讀者直觀地理解HTTP的交互流程,為後續學習Servlet、Filter、Listener等Web組件打下堅實基礎。 Servlet API是Java Web開發的核心接口,本書將詳細闡述Servlet的生命周期、請求與響應的處理、Servlet的綫程模型以及如何使用ServletContext、ServletConfig等對象進行配置和通信。在此基礎上,我們還會講解JSP(JavaServer Pages)技術,包括JSP的四大內置對象、指令、動作標簽以及EL(Expression Language)和JSTL(JSP Standard Tag Library)的應用,幫助讀者掌握動態生成HTML頁麵的方法,實現數據與視圖的分離。 此外,Filter和Listener是Web應用中不可或缺的組件,用於實現諸如請求過濾、日誌記錄、權限控製、監聽Web應用生命周期等功能。本書將通過實際案例講解如何編寫和配置Filter和Listener,使其在Web應用中發揮重要作用。 第二部分:主流Java Web框架深度解析 掌握瞭基礎的Java Web開發技術後,本書將重點轉嚮目前業界主流的Java Web框架。我們並非簡單地介紹框架的API,而是著重於剖析其設計理念、核心組件和工作原理。 Spring Framework 核心 Spring Framework 是Java領域最流行、功能最全麵的應用開發框架。本書將從Spring IoC(Inversion of Control,控製反轉)容器入手,深入講解Bean的定義、裝配(構造器注入、Setter注入、自動裝配)以及Spring的AOP(Aspect-Oriented Programming,麵嚮切麵編程)概念。通過AOP,我們可以將諸如日誌記錄、事務管理、安全檢查等橫切關注點從業務邏輯中分離齣來,實現代碼的解耦和復用。 我們將詳細介紹Spring MVC框架,它是Spring Framework的核心Web框架之一。本書將剖析Spring MVC的核心組件,如DispatcherServlet、HandlerMapping、Controller、ModelAndView、ViewResolver等,並演示如何通過注解驅動的方式,高效地構建RESTful風格的Web服務。我們還將討論Spring MVC的錶單處理、數據綁定、數據校驗等實用功能。 持久化層解決方案 在Web應用開發中,數據持久化是必不可少的一環。本書將深入講解MyBatis框架,它是一款優秀的持久層框架,能夠簡化JDBC的操作,通過XML或注解的方式映射SQL語句。我們將講解MyBatis的核心概念,如SqlSessionFactory、SqlSession、Mapper接口、動態SQL、緩存機製等,並演示如何構建高效、可維護的數據訪問層。 此外,我們還將介紹Hibernate框架,它是目前最流行的ORM(Object-Relational Mapping,對象關係映射)框架。本書將闡述Hibernate的核心理念,如實體(Entity)、映射(Mapping)、Session、事務管理,並重點講解如何通過注解或XML配置,將Java對象映射到數據庫錶,實現對象與數據庫的無縫集成。我們將對比MyBatis和Hibernate的優缺點,幫助讀者根據實際需求選擇閤適的持久化技術。 第三方組件集成與實戰 在實際的Web項目開發中,我們常常需要集成各種第三方組件來增強應用的功能。本書將涵蓋一些常用的第三方組件的集成與應用。 安全框架 Web應用的安全性至關重要。我們將介紹Spring Security框架,它是一個功能強大且高度可定製的安全框架。本書將講解Spring Security的核心概念,如認證(Authentication)、授權(Authorization)、密碼加密、過濾器鏈等,並演示如何配置Spring Security來實現用戶登錄、角色管理、URL訪問控製等安全功能。 構建工具與依賴管理 高效的構建工具和依賴管理是項目開發的重要保障。本書將介紹Maven和Gradle,這兩種業界主流的構建工具。我們將講解它們的項目結構、依賴管理、插件機製、構建生命周期等,幫助讀者掌握如何規範地組織和構建Java Web項目。 第三部分:全棧項目實戰演練 理論學習固然重要,但真正的技術掌握在於實踐。本書的第三部分將通過一個或多個完整的、具有代錶性的Java Web項目實戰,將前麵所學知識融會貫通。我們將帶領讀者從零開始,逐步構建一個功能完善的Web應用程序。 在項目實戰中,我們將涵蓋以下關鍵環節: 需求分析與係統設計: 明確項目需求,進行初步的係統架構設計,選擇閤適的技術棧。 數據庫設計與建模: 設計數據庫錶結構,建立實體關係模型。 後端開發: 使用Spring MVC和MyBatis(或Hibernate)構建RESTful API,實現業務邏輯。 前端集成: 講解如何將前端頁麵(可選擇使用JSP或流行的JavaScript框架如Vue.js、React.js等,根據讀者基礎調整篇幅)與後端API進行交互。 用戶認證與授權: 集成Spring Security實現用戶登錄、權限控製等安全功能。 單元測試與集成測試: 編寫單元測試和集成測試,確保代碼質量和係統穩定性。 部署與上綫: 講解如何將Web應用部署到Tomcat等Web服務器,並進行簡單的上綫配置。 通過項目實戰,讀者將有機會在真實的項目場景中應用所學知識,親身體驗從需求到實現的全過程,深刻理解各個技術點之間的聯係,並掌握解決實際開發問題的能力。 本書特色: 內容精煉,聚焦核心: 避免碎片化知識的堆砌,專注於Java Web開發中最具價值的技術和理念。 原理剖析,知其然更知其所以然: 不僅講解如何使用,更深入分析底層原理,幫助讀者建立深刻理解。 實戰導嚮,學以緻用: 通過豐富的代碼示例和完整的項目演練,讓讀者掌握解決實際問題的能力。 循序漸進,體係化學習: 從基礎到高級,由淺入深,構建完整的知識體係。 貼近業界,緊跟潮流: 涵蓋當前最主流的Java Web開發技術和框架。 無論您是初學者希望係統學習Java Web開發,還是有一定基礎想深化框架理解的開發者,本書都將是您理想的學習伴侶。通過本書的學習,您將能夠自信地構建齣高質量、高性能的Java Web應用程序,為您的職業發展奠定堅實的基礎。

用戶評價

評分

坦白說,我買這本書之前是抱著試試看的心理,畢竟“實戰”二字太容易被濫用瞭。然而,這本書的質量完全配得上它的標題。這本書最讓我驚喜的一點是,它不僅僅關注“如何做”(How),更關注“為什麼這樣做”(Why)。在講解數據庫訪問技術時,作者花費瞭大量篇幅去分析不同隔離級彆對並發性能的影響,以及ORM框架背後的SQL生成策略。這種深層次的探究,幫助我從根本上理解瞭性能瓶頸的來源,而不是僅僅停留在調優SQL語句的層麵。書中對日誌和監控框架(如Slf4j/Micrometer)的最佳實踐介紹也極其到位,強調瞭在分布式環境中,有效、結構化的日誌是多麼重要。我特彆喜歡它對測試策略的強調,包括如何使用嵌入式容器進行單元測試和集成測試,確保交付的代碼具備高可維護性和高穩定性。這本書的深度和廣度,讓我感覺自己不再是簡單地“使用”框架,而是真正“掌握”瞭它們背後的設計哲學。

評分

說實話,市麵上關於Java的企業級開發書籍汗牛充棟,但大多都是淺嘗輒止,或者停留在過時的技術棧上。《Java EE核心框架實戰(第2版)》之所以讓我印象深刻,在於它對“實戰”二字的深刻理解。它不是一本教科書,而更像是一位資深架構師手把手帶你做項目。我尤其欣賞作者在描述JMS和消息隊列集成時的深度。他沒有停留在簡單的點對點通信,而是詳細講解瞭如何設計一個高可用、低延遲的發布/訂閱係統,包括如何處理消息丟失和重復消費的“Exactly-Once”語義問題。這種對細節的執著和對工程嚴謹性的追求,是很多其他書籍所欠缺的。書中的案例都是圍繞金融、電商這類高並發場景展開的,這對於提升讀者的抗壓能力和解決實際問題的能力非常有幫助。我個人感覺,光是書中對安全性上下文(Security Context)的精細化管理那一章,就已經值迴票價瞭。它教會瞭我如何構建一個既符閤規範又不犧牲開發效率的企業級安全模型。總之,這是一本真正沉澱瞭多年一綫經驗的寶貴財富。

評分

這本書絕對是開發者的福音!我最近一直在尋找一本能深入剖析現代Java企業級應用開發的實戰指南,而《Java EE核心框架實戰(第2版)》完全超齣瞭我的預期。作者的講解方式非常接地氣,沒有那種高高在上的理論說教,而是直接切入痛點,用大量的代碼示例和真實的項目場景來闡述復雜的技術概念。比如,對於EJB和JPA的整閤,他不僅僅是羅列API,而是詳細拆解瞭事務管理和持久化策略在實際業務中的應用,讓人茅塞頓開。尤其是關於微服務架構下如何利用Servlet 3.x和JAX-RS構建高效API網關的部分,那部分的實踐經驗價值連城。我特彆喜歡書中對性能調優的討論,關於連接池的配置、異步處理機製的選用,都給齣瞭非常具體的量化指標和建議。讀完這部分,我立刻迴去優化瞭我們綫上一個響應慢的模塊,效果立竿見影。這本書的結構安排也很閤理,從基礎的Web容器配置到高級的安全性框架集成,邏輯性極強,讓人可以循序漸進地掌握整個技術棧。對於想從初級Java開發者轉型到企業級架構師的人來說,這本書簡直就是一本不可或缺的武功秘籍。

評分

我最近在負責一個老係統的現代化改造,技術棧的升級讓我頭疼不已,直到我翻開瞭這本《Java EE核心框架實戰(第2版)》。這本書的敘述風格非常沉穩有力,沒有太多花哨的辭藻,直擊核心要害。我最欣賞的是它對不同技術框架之間“邊界”的界定和協作模式的闡述。例如,在討論整閤Spring生態和傳統Java EE組件時,作者沒有簡單地做技術棧的二選一,而是給齣瞭如何優雅地在混閤環境中實現無縫集成的最佳實踐。書中對CDI(上下文與依賴注入)在企業級服務生命周期管理中的作用分析得極其透徹,特彆是關於作用域(Scope)的微妙差彆,這在處理復雜的會話狀態時至關重要。此外,書中對於使用Bean Validation進行服務端數據校驗的深度探討,也讓我對RESTful服務的健壯性有瞭新的認識。它強調瞭契約先行,而不是事後補救。總而言之,這本書提供瞭一種係統化的、麵嚮企業級應用生命周期的思維框架,而不僅僅是一堆孤立的技術點匯編。

評分

作為一名長期關注Java生態的技術人員,我發現很多同類書籍的更新速度跟不上技術發展的步伐,但《Java EE核心框架實戰(第2版)》在這方麵做得非常齣色。它緊跟瞭Jakarta EE 9/10的最新趨勢,比如對MicroProfile規範的初步介紹和整閤思路。我特彆關注瞭其中關於非阻塞I/O和響應式編程在Java EE環境下的應用部分。作者沒有迴避這個前沿話題,而是結閤NIO和異步Servlet API,演示瞭如何構建能夠有效利用現代多核CPU資源的Web服務。這部分內容非常具有前瞻性。另外,書中對部署描述符(Deployment Descriptor)的解讀也極為細緻,它讓我重新審視瞭一些過去被認為是“老舊”配置的底層原理,從而在雲原生部署中能做齣更優化的決策。這本書的價值在於,它既紮根於成熟穩定的企業級標準,又勇於探索未來的發展方嚮,為我們搭建下一代應用提供瞭堅實的理論和實踐基礎。

評分

不錯,不過字太小。看著很纍

評分

書挺好 目前在學習中

評分

一下子買瞭好幾本,還沒來及仔細看看,看後再來評價

評分

服務非常差…快遞到瞭電話短信都沒有一個

評分

之前沒有基礎 或者基礎不好的 不要買 買完瞭也是 照著上麵的代碼 敲

評分

是正品。

評分

實際操作,全部是實際操作

評分

評分

書挺好 目前在學習中

相關圖書

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.tinynews.org All Rights Reserved. 静思书屋 版权所有