深入理解JavaWeb開發技術:探索基於主流框架的最佳組合

深入理解JavaWeb開發技術:探索基於主流框架的最佳組合

《深入理解JavaWeb開發技術:探索基於主流框架的最佳組合》是2013年3月清華大學出版社出版的圖書,作者是譚貞軍。

基本介紹

  • 中文名:深入理解JavaWeb開發技術:探索基於主流框架的最佳組合
  • 作者:譚貞軍
  • 出版時間:2013年3月
  • 出版社:清華大學出版社
  • ISBN:9787302310105
  • 定價:76 元
內容簡介,圖書目錄,

內容簡介

本書內容新穎、知識全面、講解詳細,可以幫助讀者深入理解Java Web開發技術的基本知識,並能挖掘出基於主流框架的最佳組合。
全書共分16章,內容都採用了理論加實踐的教學方法,每個實例先提出製作思路及列舉包含的知識點,然後力求用最通俗的語言將高深的知識闡述出來。
本書適合Java各個級別的程式設計師、研發人員及在職程式設計師閱讀,也可以作為相關培訓學校和大專院校相關專業的教學用書。

圖書目錄

第1章 Java Web初體驗 1
1.1 學習Java的巨大優勢 2
1.1.1 排名第一的程式語言 2
1.1.2 良好的就業前景 2
1.2 學習Java需要了解的那些事 3
1.2.1 Java語言的發展歷史 3
1.2.2 Java的特點 4
1.2.3 Java的平台無關性 5
1.3 Web技術介紹和工作原理 6
1.3.1 本地計算機和遠程伺服器 7
1.3.2 Web應用程式的工作原理 7
1.3.3 常用的Web開發技術 8
1.4 開發前的準備 9
1.4.1 安裝JDK 9
1.4.2 設定PATH環境變數 13
1.4.3 JRE和JDK是有區別的 14
1.4.4 困擾初學者的環境變數問題 14
1.5 安裝並配置Tomcat伺服器 15
1.5.1 獲取Tomcat 15
1.5.2 配置Tomcat的服務連線埠 18
1.5.3 列出Web套用根路徑下的
所有頁面 18
1.5.4 登錄控制台 19
1.5.5 設定虛擬 21
1.6 初學者應該明白的幾個問題 22
1.6.1 獨特的垃圾回收機制 22
1.6.2 對學習者的三條建議 23
第2章 HTML技術介紹 25
2.1 創建基本靜態頁面 26
2.1.1 設定網頁頭部和標題 26
2.1.2 設定頁面正文和注釋 26
2.1.3 文字和段落處理 28
2.1.4 超級連結處理 30
2.1.5 插入圖片 32
2.1.6 列表處理 35
2.2 HTML頁面布局 36
2.2.1 使用表格標記 36
2.2.2 使用框架標記 40
2.2.3 使用層標記 43
2.3 處理表單 44
2.3.1 表單標記介紹 44
2.3.2 使用form標記 45
2.3.3 使用文本域 45
2.3.4 使用文本區域和按鈕 46
2.3.5 使用單選按鈕和複選框 46
2.3.6 使用列表選單 47
2.3.7 使用檔案域、圖像域和
隱藏域 47
2.4 特效和多媒體處理 48
2.4.1 實現滾動效果 48
2.4.2 設定背景音樂 50
2.4.3 插入Flash 50
2.4.4 使用ActiveX控制項 51
2.5 談XML與HTML的區別 52
2.6 初學者應該明白的幾個問題 54
2.6.1 用Dreamweaver提高效率 54
2.6.2 在HTML網頁中實現空格 56
2.6.3 網站內部連結最佳化 56
2.6.4 幾種增加外部連結的方法 58
第3章 CSS技術基礎 59
3.1 CSS技術介紹 60
3.1.1 CSS概述 60
3.1.2 CSS的特點和意義 60
3.2 CSS的語法結構 61
3.3 CSS選擇符 62
3.4 調用方式 63
3.5 定位布局 65
3.5.1 元素排列 65
3.5.2 浮動屬性定位 66
3.6 使用CSS屬性 67
3.6.1 屬性類別 67
3.6.2 定位屬性 69
3.6.3 內容控制屬性 70
3.6.4 浮動屬性 73
3.6.5 列表屬性 75
3.6.6 補白屬性 77
3.6.7 框線屬性 78
3.6.8 邊界屬性 81
3.7 CSS修飾 83
3.7.1 文本修飾 84
3.7.2 圖片修飾 85
3.7.3 表單修飾 85
3.7.4 修飾水平線 89
3.8 初學者應該明白的幾個問題 90
3.8.1 體會ID選擇符的奧妙 90
3.8.2 每種顏色對應十六進制
顏色值 90
3.8.3 分析相對路徑和絕對路徑的
優缺點 90
3.8.4 總結調用CSS的方式 91
第4章 引入JavaScript 93
4.1 JavaScript簡介 94
4.1.1 運行環境 94
4.1.2 JavaScript格式 94
4.1.3 一個典型的JavaScript檔案 94
4.2 數據類型 95
4.2.1 數據類型概述 95
4.2.2 JavaScript常量 96
4.2.3 JavaScript變數 96
4.3 表達式和運算符 97
4.3.1 JavaScript的表達式 97
4.3.2 JavaScript的運算符 98
4.4 JavaScript轉向控制語句 100
4.4.1 if條件語句 101
4.4.2 for循環語句 102
4.4.3 while循環語句 103
4.4.4 do...while循環語句 104
4.4.5 break控制 105
4.4.6 switch循環語句 106
4.5 JavaScript的函式 106
4.5.1 JavaScript函式的構成 106
4.5.2 JavaScript常用函式 107
4.6 JavaScript對象 109
4.6.1 對象基礎知識 109
4.6.2 JavaScript常用對象和方法 111
4.7 JavaScript事件 114
4.7.1 JavaScript常用事件 114
4.7.2 事件處理程式 115
4.8 JavaScript的視窗對象 116
4.8.1 視窗對象 116
4.8.2 視窗對象的事件驅動 116
4.8.3 視窗對象中的屬性 116
4.8.4 視窗對象的方法 117
4.8.5 JavaScript視窗對象的套用 117
4.9 JavaScript框架對象 118
4.10 初學者應該明白的幾個問題 120
4.10.1 JavaScript與Java的區別 120
4.10.2 錯誤處理機制 121
4.10.3 設計師們的幾塊大蛋糕 121
第5章 JSP基礎 123
5.1 JSP概述 124
5.2 構建Web套用 124
5.3 配置描述檔案web.xml 126
5.4 深入理解JSP機制 127
5.5 基本語法 131
5.5.1 基本語法介紹 131
5.5.2 注釋 132
5.5.3 JSP的聲明 134
5.5.4 輸出表達式 135
5.5.5 腳本 136
5.6 編譯指令 139
5.6.1 page指令 139
5.6.2 include指令 141
5.7 JSP的動作指令 142
5.7.1 七個動作指令 142
5.7.2 回響轉發指令forward 143
5.7.3 動態include指令 144
5.7.4 下載指令plugin 145
5.7.5 設定參數值指令param 146
5.7.6 JavaBean指令:useBean、
setProperty和getProperty 146
5.7.7 將JavaBean實例放在
指定的scope 148
5.8 初學者應該明白的幾個問題 149
5.8.1 了解JSP的強勢和弱勢 149
5.8.2 探索JSP 149
5.8.3 體會屬性errorPage的好處 150
5.8.4 靜態導入和動態導入的
區別 152
5.8.5 比較forward動作指令和
include動作指令 152
第6章 JSP核心 153
6.1 JSP的內置對象 154
6.1.1 內置對象簡介 154
6.1.2 application對象 155
6.1.3 使用config對象 164
6.1.4 exception對象 166
6.1.5 使用pageContext對象 167
6.1.6 使用out對象 169
6.1.7 使用request對象 170
6.1.8 response對象 176
6.1.9 session對象 180
6.2 自定義JSP標籤 184
6.2.1 推出自定義標籤的好處 184
6.2.2 開發自定義標籤類 185
6.2.3 編寫TLD檔案 185
6.2.4 使用標籤庫里的標籤 188
6.2.5 修改web.xml 189
6.2.6 套用自定義標籤 189
6.2.7 將頁面片段作為屬性的
標籤 195
6.2.8 動態屬性的標籤 196
6.3 JSP 2的新特性 198
6.3.1 JSP 2新特性概述 198
6.3.2 配置JSP屬性 199
6.3.3 JSP的表達式 201
6.3.4 Tag File 210
6.4 初學者應該明白的幾個問題 211
6.4.1 JSP內置對象的實質 211
6.4.2 分析exception對象的原理 211
6.4.3 並不是每個表單域都會生成
請求參數 212
6.4.4 總結request中的方法 212
6.4.5 比較forward和redirect 213
6.4.6 Cookie中的中文字元問題 214
6.4.7 了解JSP的session機制 214
第7章 Servlet詳解 215
7.1 什麼是Servlet 216
7.1.1 Servlet技術的優越性 216
7.1.2 Servlet的持久性 216
7.1.3 Applet和Servlet的異同 217
7.2 Servlet開發初體驗 217
7.3 配置Servlet 219
7.4 Servlet的功能 227
7.4.1 與Servlet配置相關的接口 227
7.4.2 Servlet編程接口 228
7.4.3 Servlet套用接口 228
7.5 使用HttpServlet類封裝請求 230
7.5.1 HttpServlet類 230
7.5.2 請求與回響 233
7.5.3 會話 234
7.5.4 封裝請求 237
7.6 Servlet過濾器 241
7.6.1 配置過濾器 241
7.6.2 使用過濾器 241
7.7 load-on-startup Servlet 243
7.8 訪問Servlet的配置參數 244
7.9 Servlet的“加強版”——Filter 247
7.9.1 Filter基礎 247
7.9.2 創建Filter 247
7.9.3 配置Filter 249
7.10 使用Listener類 252
7.10.1 Listener類基礎 252
7.10.2 實現Listener類 253
7.10.3 使用ServletContext
AttributeListener 255
7.10.4 使用ServletRequestListener
和ServletRequestAttribute
Listener 256
7.10.5 使用HttpSessionListener和
HttpSessionAttribute
Listener 257
7.11 全新的Servlet 3.0 259
7.11.1 新的Annotation 260
7.11.2 對Web模組的支持 260
7.11.3 新引入的異步處理 262
7.11.4 改進的Servlet API 264
7.11.5 動態地註冊Servlet和
Filter的方法 266
7.12 初學者應該明白的幾個問題 267
7.12.1 Servlet和JSP的比較 267
7.12.2 使用Annotation
配置Servlet 267
7.12.3 Filter和Servlet的關係 268
7.12.4 HttpServletRequest的用法 268
7.12.5 使用異步監聽器 268
第8章 深入詳解JavaBean 271
8.1 JavaBean基礎 272
8.1.1 JavaBean介紹 272
8.1.2 Java EE中JavaBean處於
哪一層 273
8.1.3 體驗JavaBean 273
8.1.4 總結JavaBean的卓越性能 275
8.2 JSP和JavaBean之間的關係 275
8.2.1 JSP訪問JavaBean 275
8.2.2 在JSP中調用JavaBean 277
8.3 設定JavaBean屬性 278
8.3.1 Simple屬性 278
8.3.2 Indexed屬性 279
8.3.3 Bound屬性 280
8.3.4 Constrained屬性 281
8.3.5 JSP設定屬性 282
8.4 JavaBean方法 286
8.5 JavaBean的作用範圍 291
8.5.1 page作用域 292
8.5.2 request作用域 293
8.5.3 session作用域 294
8.5.4 application作用域 295
8.6 JavaBean的移除 297
8.7 初學者應該明白的幾個問題 301
8.7.1 在Web頁面中調用
JavaBean組件 301
8.7.2 在JSP中調用JavaBean
的優點 303
8.7.3 獲得JavaBean的屬性 304
第9章 JSTL標籤庫 305
9.1 JSTL基礎 306
9.1.1 使用第三方提供的標籤庫 306
9.1.2 JSTL標籤的構成 307
9.2 JSTL Core標籤庫 308
9.2.1 一般用途的標籤 308
9.2.2 條件標籤 312
9.2.3 疊代標籤 314
9.2.4 與URL相關的標籤 318
9.3 I18N標籤庫 321
9.3.1 <fmt:formatNumber>標籤 322
9.3.2 <fmt:parseNumber>標籤 325
9.3.3 <fmt:formatDate>標籤 327
9.3.4 <fmt:parseDate>標籤 330
9.3.5 <fmt:setTimeZone>標籤 331
9.3.6 <fmt:timeZone>標籤 332
9.3.7 <fmt:setLocale>標籤 334
9.3.8 <fmt:requestEncoding>標籤 336
9.3.9 <fmt:setBundle>標籤 336
9.3.10 <fmt:message>標籤 336
9.3.11 <fmt:param>標籤 339
9.3.12 <fmt:bundle>標籤 339
9.4 使用SQL標籤庫 340
9.4.1 <sql:setDataSource>標籤 340
9.4.2 <sql:query>標籤和<sql:param>
標籤 341
9.4.3 <sql:update>標籤 343
9.4.4 <sql:dateParam>標籤 344
9.4.5 <sql:transaction>標籤 344
9.5 函式標籤 345
9.5.1 求長度函式 345
9.5.2 大小寫轉換函式 346
9.5.3 求子串函式 346
9.5.4 去空白函式 347
9.5.5 替換函式 347
9.5.6 查找函式 347
9.5.7 拆分與組合函式 348
9.5.8 函式escapeXml 349
9.6 XML標籤庫 349
9.7 初學者應該明白的幾個問題 352
9.7.1 總結Core標籤庫 352
9.7.2 <fmt:timeZone>和
<fmt:setTimeZone>的區別 353
9.7.3 <fmt:setBundle>與<fmt:bundle>
的區別 353
9.7.4 體會屬性檔案在國際化中的
作用 353
9.7.5 關於SQL標籤的一些爭論 354
9.7.6 在JSP代碼中穿插
XML檔案 354
第10章 Ajax技術 357
10.1 Ajax基礎 358
10.1.1 Ajax技術介紹 358
10.1.2 Ajax開發模式與傳統開發
模式的比較 359
10.1.3 Ajax是一門提高用戶體驗
的技術 360
10.1.4 Ajax需要注意的幾個問題 361
10.2 XMLHttpRequest對象 362
10.2.1 創建XMLHttpRequest
對象 363
10.2.2 XMLHttpRequest對象
的方法 364
10.2.3 XMLHttpRequest對象
的屬性 366
10.2.4 XMLHttpRequest對象的
事件句柄函式 367
10.3 與伺服器通信——傳送請求與
處理回響 368
10.3.1 傳送請求 368
10.3.2 處理伺服器回響 369
10.4 解決中文亂碼問題 371
10.4.1 傳送請求時出現中文亂碼 371
10.4.2 獲取伺服器的回響結果時
出現中文亂碼 371
10.5 Ajax重構 372
10.6 使用Ajax技術 373
10.6.1 一個簡單的Ajax程式 374
10.6.2 分析Ajax的步驟 375
10.7 表單驗證實例 379
10.8 無刷新上傳進程實例 385
10.9 初學者應該明白的幾個問題 389
10.9.1 異步和同步的問題 389
10.9.2 GET方式和POST方式的
選擇 389
10.9.3 體會innerText屬性的特殊
作用 389
10.9.4 充分利用Ajax的
開源框架 390
10.9.5 探討驗證碼的無刷新驗證的
實現思路 390
第11章 資料庫編程 397
11.1 與資料庫相關的概念 398
11.2 SQL語言 400
11.2.1 數據定義 400
11.2.2 數據操縱 402
11.2.3 視圖 404
11.2.4 SQL高級操作 405
11.3 初識JDBC 407
11.3.1 JDBC驅動類型 407
11.3.2 JDBC的常用接口和類 408
11.3.3 JDBC編程步驟 410
11.4 常用的幾種資料庫 413
11.4.1 Access資料庫 413
11.4.2 SQL Server資料庫 413
11.4.3 MySQL資料庫 417
11.5 執行SQL語句的方式 417
11.5.1 使用executeUpdate 417
11.5.2 使用execute方法 418
11.6 事務處理 420
11.6.1 JDBC中的事務控制 420
11.6.2 檢查資料庫是否支持事務
處理 422
11.6.3 JDBC事務控制的流程 422
11.7 存儲過程 425
11.7.1 創建存儲過程 426
11.7.2 調用創建的存儲過程 428
11.8 初學者應該明白的幾個問題 429
11.8.1 通過課外學習掌握資料庫
技術 430
11.8.2 沒有最完美的產品 430
11.8.3 合適的就是最好的 432
第12章 Struts 2基礎 435
12.1 MVC思想 436
12.1.1 什麼是MVC思想 436
12.1.2 MVC思想及其優勢 437
12.1.3 Struts MVC思想 437
12.2 下載並安裝Struts 2 438
12.2.1 獲得並設定Struts 2 438
12.2.2 在Eclipse中使用Struts 2 440
12.2.3 使用Struts 2的流程 441
12.2.4 Struts 2的工作流程 443
12.3 配置Struts 2 443
12.3.1 配置常量 443
12.3.2 包含其他配置檔案 448
12.4 實現Action 448
12.4.1 基礎知識 448
12.4.2 標準Action類 450
12.4.3 ActionSupport基類 450
12.4.4 訪問Servlet API 455
12.4.5 直接訪問Servlet API 458
12.4.6 用ServletActionContext
訪問Servlet API 459
12.5 配置Action 462
12.5.1 命名空間和包 462
12.5.2 基本配置 466
12.5.3 使用Action的動態方法
調用 466
12.5.4 為Action配置method
屬性 469
12.5.5 使用通配符映射方式 470
12.6 初學者應該明白的幾個問題 470
12.6.1 MVC思想和觀察者模式 471
12.6.2 使用Action處理用戶請求 471
12.6.3 一份完整struts.xml檔案的
常量配置骨架 471
第13章 Hibernate基礎 475
13.1 Hibernate基礎 476
13.1.1 Hibernate概述 476
13.1.2 Hibernate API簡介 476
13.1.3 Hibernate的核心接口 477
13.1.4 Hibernate的體系結構 478
13.2 Hibernate的下載和安裝 478
13.2.1 下載Hibernate 478
13.2.2 為Eclipse安裝外掛程式 480
13.3 認識幾種簡單配置Hibernate的
方式 481
13.3.1 配置數據源 481
13.3.2 配置c3p0連線池 482
13.3.3 配置proxool連線池 483
13.3.4 MySQL連線配置 484
13.3.5 SQL Server連線配置 485
13.3.6 Oracle連線配置 486
13.4 Hibernate配置 486
13.4.1 持久化操作實例 486
13.4.2 創建Configuration對象 490
13.4.3 Hibernate的JDBC連線 493
13.4.4 資料庫方言 493
13.4.5 與Hibernate相關的
常用屬性 494
13.5 SessionFactory接口 496
13.6 Session接口 497
13.6.1 save方法 498
13.6.2 get方法 498
13.6.3 load方法 499
13.6.4 update方法 499
13.6.5 delete方法 500
13.7 Transaction接口 501
13.8 Query接口 501
13.9 Criteria接口 502
13.10 持久化對象 503
13.10.1 持久化類的規則 503
13.10.2 持久化的狀態 503
13.10.3 改變持久化對象狀態 505
13.11 Hibernate映射檔案 505
13.11.1 映射檔案結構 506
13.11.2 主鍵映射 507
13.11.3 普通屬性映射 508
13.11.4 映射引用屬性 510
13.11.5 映射Set集合屬性 515
13.11.6 映射List集合屬性 517
13.11.7 其他屬性 517
13.12 初學者應該明白的幾個問題 518
13.12.1 應該儘量使用
數據源方式 518
13.12.2 何時使用Hibernate作為
持久化框架 518
13.12.3 分析集合性能 518
第14章 Spring技術 521
14.1 Spring技術介紹 522
14.1.1 Spring的優點 522
14.1.2 Spring將改變Java EE 522
14.2 下載並安裝Spring 522
14.2.1 獲取Spring壓縮檔 522
14.2.2 在Eclipse中使用Spring 524
14.2.3 在Web項目中
使用Spring 527
14.3 依賴注入 530
14.3.1 依賴注入基礎 530
14.3.2 設定注入 531
14.3.3 代碼升級遊刃有餘 533
14.3.4 構造注入 534
14.4 Spring容器 535
14.4.1 Spring的IoC容器 537
14.4.2 BeanFactory對IoC容器的
功能定義 538
14.4.3 XmlBeanFactory的
工作原理 538
14.4.4 ApplicationContext的
國際化 541
14.4.5 詳解ApplicationContext的
事件機制 542
14.4.6 Bean獲取Spring容器 546
14.5 Spring中的Bean 549
14.5.1 定義Bean 549
14.5.2 Spring中Bean的作用域 550
14.5.3 配置依賴 553
14.5.4 屬性值注入 554
14.5.5 注入field值 556
14.5.6 注入方法返回值 557
14.6 Java配置管理 560
14.7 初學者應該明白的幾個問題 563
14.7.1 使用HttpInvoke提高效率 563
14.7.2 Hibernate與Spring的
JDBC Template效率比較 567
14.7.3 Spring + Hibernate模式下
數據操作的效率問題 568
14.7.4 Spring效率的測試報告 568
第15章 深入挖掘最優框架組合 573
15.1 縱覽各種各樣的框架 574
15.2 Struts 2 + iBatis + JSON實現快速
Java Web 2.0程式開發 575
15.3 JSF和Web的完美組合,提升
開發效率 576
15.3.1 傳統JSP開發存在的問題 576
15.3.2 開發基於JSF的Web
應用程式步驟 576
15.4 分析Java Web的MVC
實現模型 578
15.4.1 MVC介紹 578
15.4.2 舉例說明MVC的用法 579
15.4.3 基本MVC的實例 581
15.5 分析常規Java Web的開發模式 585
15.5.1 三個標準動作 585
15.5.2 JSP的設計模式 586
15.6 總結Java Web開發中的幾種經典
模式 587
15.7 SSH模式 589
15.7.1 SSH的整合理念 589
15.7.2 組裝Struts + Spring +
Hibernate的背景 591
15.7.3 分解Struts + Spring +
Hibernate的層次 592
15.7.4 Spring整合Struts的三個
竅門 593
15.7.5 攔截Struts 595
15.7.6 Spring整合Hibernate 596
15.8 Struts與Spring兩種MVC框架的
比較 599
15.8.1 Struts 600
15.8.2 Spring 601
第16章 OA辦公自動化系統 603
16.1 需求分析 604
16.2 項目規劃 604
16.3 編寫項目計畫書 605
16.4 構建開發環境 607
16.5 規劃系統結構 607
16.6 搭建資料庫 607
16.6.1 資料庫E-R圖分析 608
16.6.2 數據結構表 611
16.7 最後的準備工作 618
16.7.1 數據表的創建及測試數據的
插入 618
16.7.2 系統檔案組織結構 619
16.7.3 數據源及框架的配置 619
16.8 具體編碼 620
16.8.1 登錄模組 620
16.8.2 管理首頁模組 623
16.8.3 緊急報警模組 624
16.8.4 檔案管理模組 624
16.9 調試與發布 625
參考文獻 627

相關詞條

熱門詞條

聯絡我們