Java Web開發學習手冊

Java Web開發學習手冊

《Java Web開發學習手冊》是2011年電子工業出版社出版的圖書,作者是明日科技、朱曉、盧瀚、王國輝。

內容簡介

編程成功之路從此開始!

在內容安排上由淺入深,讓讀者循序漸進地掌握編程技術;在內容講解上結合豐富的圖解和形象的比喻,幫助讀者理解晦澀難懂的技術;在內容形式上附有大量的提示、技巧、說明、情景套用和實戰練習等欄目,夯實讀者編程技術,豐富編程經驗。全書共分為4篇,21章,包括JavaWeb概述、搭建開發環境、Java語言基礎、JavaScript語言、XML基礎、JSP語法、JSP內置對象、JavaBean技術、Servlet技術、EL表達式、JSTL標籤庫、資料庫套用開發、檔案上傳下載管理、解析XML、Ajax技術、Struts2框架技術、Hibernate技術和Spring技術。最後兩章為項目實戰練習,分別為論壇和網上商城,它們都套用了目前最流行的3大框架技術。通過這兩個練習,希望讀者能夠更加深刻的理解和運用Struts2、Hibernate和Spring技術。

本書的隨附光碟中包括本書所有程式的原始碼和重點難點內容的視頻錄像,其中的原始碼全部經過精心測試,能夠在Windows 2000、Windows XP、Windows 2003和Windows 7作業系統中編譯和運行。

本書適用於JavaWeb的愛好者、初學者和中級開發人員,也可以作為大中專院校和培訓機構的教材。本書以初學者為對象,全面介紹了使用Java Web開發程式的相關技術。

目錄

第1篇 起 步 篇

第1章 JavaWeb概述 2

1.1 初識Java Web 19

1.1.1 概述 19

1.1.2 Java語言的主要特點 19

1.1.3 Java Web 20

1.1.4 Java Web成功案例 20

1.2 Web套用技術 21

1.2.1 客戶端套用技術 21

1.2.2 伺服器端套用技術 23

1.3 Web應用程式的工作原理 23

1.4 網路程式開發體系結構 24

1.4.1 C/S結構 24

1.4.2 B/S結構 25

1.4.3 B/S與C/S的區別 25

1.5 Java Web網站的基本構建流程 26

1.6 常用網上資源 26

1.6.1 常用資源下載網 26

1.6.2 技術社區 27

1.7 本章小結 27

第2章 搭建開發環境 12

2.1 Java Web開發環境概述 29

2.1.1 開發工具包JDK 29

2.1.2 Web伺服器 29

2.1.3 資料庫 30

2.1.4 Web瀏覽器 30

2.2 JDK 30

2.2.1 下載JDK 30

2.2.2 安裝JDK 32

2.2.3 配置和測試JDK 33

2.3 安裝和配置Tomcat 34

2.3.1 獲取Tomcat 34

2.3.2 熟悉Tomcat 35

2.4 Eclipse 36

2.4.1 獲取Eclipse 36

2.4.2 運行Eclipse 37

2.4.3 打造中文版Eclipse 37

2.5 做好項目開發的準備工作 38

2.5.1 集成Eclipse與Tomcat 39

2.5.2 完善Web項目開發所需配置 40

2.6 本章小結 40

第3章 資料庫基礎 25

3.1 初識SQL Server資料庫 42

3.1.1 安裝SQL Server資料庫 42

3.1.2 安裝SQL Server SP4補丁 44

3.1.3 創建資料庫 45

3.1.4 創建數據表 46

3.2 初識MySQL資料庫 47

3.2.1 安裝並配置MySQL 47

3.2.2 安裝MySQL GUI Tool 49

3.2.3 連線MySQL Administrator 50

3.2.4 創建資料庫 51

3.2.5 創建數據表 51

3.2.6 編輯數據表中的數據 51

3.3 本章小結 52

第4章 Java語言基礎 37

4.1 面向對象程式設計 54

4.1.1 類和對象 54

4.1.2 定義類 54

4.1.3 定義成員方法 55

4.1.4 定義成員變數與局部變數 56

4.1.5 使用構造方法 57

4.1.6 創建與使用Java對象 58

4.1.7 使用包 59

4.2 數據類型 60

4.2.1 基本數據類型 60

4.2.2 類型之間的轉換 60

4.3 常量與變數 61

4.3.1 定義常量 61

4.3.2 定義變數 62

4.4 運算符的套用 62

4.4.1 賦值運算符 62

4.4.2 算術運算符 62

4.4.3 比較運算符 63

4.4.4 邏輯運算符 64

4.4.5 位運算符 64

4.4.6 條件運算符 66

4.4.7 自增自減運算符 66

4.4.8 運算符的優先權 67

4.4.9 情景套用:簡單的加密操作 67

4.5 流程控制語句 68

4.5.1 分支語句 68

4.5.2 循環語句 71

4.5.3 合理使用循環語句 74

4.5.4 使用break和continue語句實現程式跳轉 74

4.5.5 情景套用:判斷數的奇偶性 75

4.6 字元串處理 75

4.6.1 創建字元串對象 76

4.6.2 連線字元串 76

4.6.3 判斷字元串對象是否相等 77

4.6.4 字元串替換 78

4.6.5 獲取子字元串 78

4.6.6 將字元串轉換為數值類型 79

4.6.7 情景套用:格式化當前日期 79

4.7 創建並使用數組 80

4.7.1 數組及其套用 81

4.7.2 創建及遍歷一維數組 81

4.7.3 創建及遍歷二維數組 82

4.8 套用集合類 82

4.8.1 ArrayList類 83

4.8.2 Vector類 84

4.9 實戰練習 85

4.9.1 判斷某年是否是閏年 85

4.9.2 在控制台輸出楊輝三角形 86

4.10 本章小結 86

第5章 JavaScrip語言 71

5.1 初識JavaScript 88

5.1.1 JavaScript功能 88

5.1.2 在Web頁面中引入JavaScript 89

5.1.3 解決瀏覽器不能執行JavaScript的問題 90

5.2 JavaScript語言基礎 92

5.2.1 變數 92

5.2.2 數據類型 92

5.2.3 套用運算符 94

5.2.4 流程控制語句 96

5.3 使用函式 99

5.3.1 定義函式 99

5.3.2 調用函式 100

5.4 事件處理 100

5.4.1 事件 100

5.4.2 指定事件處理程式的方法 101

5.5 DOM常用技術 102

5.5.1 文檔的層次結構 103

5.5.2 情景套用:遍歷文檔樹 103

5.6 與DHTML相對應的DOM 105

5.6.1 innerHTML和innerText屬性 106

5.6.2 outerHTML和outerText屬性 106

5.7 視窗對象 107

5.7.1 有效利用資源——控制狀態欄文本 107

5.7.2 打開新的瀏覽器視窗 108

5.7.3 情景套用:關閉瀏覽器視窗 109

5.8 使用Date對象 109

5.9 實戰練習 111

5.9.1 驗證電話號碼是否正確 111

5.9.2 將小寫金額轉換為大寫金額 112

5.10 本章小結 112

第6章 初識XML 97

6.1 XML介紹 114

6.1.1 XML文檔結構 114

6.1.2 XML語法 115

6.1.3 XML聲明 115

6.1.4 元素 115

6.1.5 屬性 116

6.1.6 注釋 116

6.1.7 字元和實體引用 116

6.2 XML的兩種語法規則 117

6.2.1 DTD文檔類型定義 117

6.2.2 Schema文檔規則 121

6.3 XML的3種顯示格式 121

6.3.1 CSS樣式表 122

6.3.2 XSL樣式語言 122

6.3.3 XML數據島技術 122

6.3.4 情景套用一:使用CSS顯示XML文檔內容 122

6.3.5 情景套用二:使用XSL顯示XML文檔內容 123

6.3.6 情景套用三:套用XML數據島技術顯示XML文檔內容 125

6.4 實戰練習 126

6.4.1 組合運用XML與CSS 126

6.4.2 組合運用XML與XSL 126

6.5 本章小結 127

第7章 JSP語法 112

7.1 JSP概述 129

7.2 使用JSP指令標識 130

7.2.1 使用頁面指令page 130

7.2.2 使用檔案包含指令include 132

7.2.3 使用引用標籤庫指令taglib 133

7.2.4 情景套用: 套用include指令包含其他頁面 133

7.3 使用JSP腳本 134

7.3.1 在JSP中套用代碼片段 134

7.3.2 使用JSP表達式 135

7.3.3 使用聲明標識 136

7.3.4 情景套用:套用JSP聲明實現訪問統計 136

7.4 注釋 137

7.4.1 基本HTML注釋 137

7.4.2 隱藏注釋 137

7.4.3 代碼片段中的注釋 138

7.5 常用JSP動作標識 138

7.5.1 使用包含動作標識 139

7.5.2 使用請求轉發的動作標識 141

7.5.3 使用子動作標識 142

7.5.4 使用動作標識 143

7.5.5 使用動作標識 148

7.5.6 使用動作標識 149

7.5.7 情景套用:套用JavaBean保存圖片信息 150

7.6 實戰練習 153

7.6.1 套用Java程式片段動態生成表格 153

7.6.2 將頁面轉發到用戶登錄頁面 154

7.6.3 在同一頁面中提交多個表單 155

7.7 本章小結 155

第2篇 核 心 篇

第8章 JSP內置對象 142

8.1 JSP內置對象概述 159

8.1.1 內置對象的作用 159

8.1.2 內置對象及其套用場合 159

8.2 request請求對象 160

8.2.1 獲取請求參數 160

8.2.2 解決中文亂碼問題 161

8.2.3 獲取客戶端數據 162

8.2.4 套用request對象域 163

8.3 response回響對象 164

8.3.1 操作HTTP頭信息 165

8.3.2 設定MIME類型 165

8.3.3 實現頁面重定向 165

8.4 out輸出對象 166

8.4.1 向客戶端輸出數據 167

8.4.2 管理緩衝區 167

8.5 session會話對象 168

8.5.1 session的生命周期 168

8.5.2 創建與獲取會話 168

8.5.3 移除對話中的數據 169

8.5.4 設定會話的有效時間 169

8.5.5 情景套用:套用session對象模擬用戶登錄 170

8.6 套用application對象 171

8.6.1 application對象的生命周期 171

8.6.2 操作application對象中數據 171

8.6.3 配置Web套用的初始化參數 172

8.6.4 情景套用:實現網頁計數器 173

8.7 其他內置對象 174

8.7.1 應答與請求的page對象 174

8.7.2 頁面上下文的pageContext對象 174

8.7.3 獲取web.xml配置信息的config對象 174

8.7.4 獲取異常信息的exception對象 175

8.8 實戰練習 175

8.8.1 通過application對象實現網站計數器 175

8.8.2 統計用戶在站點的停留時間 176

8.9 本章小結 176

第9章 JavaBean技術 161

9.1 JavaBean概述 178

9.1.1 JavaBean產生背景 178

9.1.2 JavaBean的作用 178

9.1.3 JavaBean的規範 178

9.1.4 Eclipse對JavaBean方法的支持 179

9.2 JavaBean的屬性 180

9.2.1 Simple屬性 180

9.2.2 Indexed屬性 181

9.2.3 Bound屬性 181

9.2.4 Constrained屬性 182

9.3 JavaBean與JSP的完美結合 182

9.3.1 更加對象化的JSP開發 182

9.3.2 套用 標識 184

9.3.3 套用 標識 185

9.3.4 套用 標識 187

9.3.5 情景套用:套用JavaBean錄入檔案 188

9.4 實戰練習 190

9.4.1 判斷用戶名是否有效 190

9.4.2 計算兩個日期相差的天數 191

9.5 本章小結 191

第10章 Servlet技術 176

10.1 Servlet技術 193

10.1.1 Servlet概述 193

10.1.2 Servlet功能 193

10.1.3 Servlet特點 194

10.1.4 Servlet的生命周期 194

10.2 Servlet技術開發 195

10.2.1 Servlet在Java EE中的結構體系 195

10.2.2 Servlet核心API 195

10.2.3 創建第1個Servlet類 196

10.2.4 解析Servlet配置 198

10.2.5 使用Servlet處理業務邏輯 198

10.2.6 Servlet處理流程 200

10.2.7 使用Eclipse快速創建Servlet 200

10.3 Servlet的典型套用 202

10.3.1 處理表單數據 202

10.3.2 頁面轉發 206

10.3.3 獲取當前頁的絕對路徑 207

10.3.4 操作Cookie 207

10.3.5 情景套用:利用JavaBean由Servlet向JSP傳遞數據 209

10.4 配置並使用Servlet過濾器 210

10.4.1 過濾器的處理方式 211

10.4.2 過濾器的核心對象 211

10.4.3 創建並配置過濾器 212

10.4.4 字元編碼過濾器 215

10.4.5 情景套用一:驗證用戶身份 219

10.4.6 情景套用二:統計網站流量 221

10.4.7 情景套用三:過濾敏感字元 222

10.5 Servlet監聽器 223

10.5.1 Servlet監聽器簡介 223

10.5.2 Servlet監聽器的工作原理 223

10.5.3 監聽Servlet上下文 224

10.5.4 監聽HTTP會話 224

10.5.5 監聽Servlet請求 225

10.5.6 情景套用一:使用監聽器查看線上用戶 225

10.5.7 情景套用二:利用監聽器使服 務器端免登錄 228

10.6 實戰練習 229

10.6.1 記錄用戶訪問次數 229

10.6.2 將數據導出到Excel表 230

10.7 本章小結 230

第11章 EL表達式 215

11.1 EL概述 232

11.1.1 EL的基本語法 232

11.1.2 EL的特點 232

11.2 與低版本的環境兼容——禁用EL 233

11.2.1 使用斜槓“\”符號 233

11.2.2 使用page指令 233

11.2.3 在web.xml檔案中配置 元素 233

11.3 保留關鍵字 234

11.4 EL運算符及其優先權 234

11.4.1 通過EL訪問數據 235

11.4.2 在EL中執行算術運算 236

11.4.3 在EL中判斷對象是否為空 236

11.4.4 在EL中執行邏輯關係運算 237

11.4.5 在EL中執行條件運算 238

11.5 EL的隱含對象 239

11.5.1 頁面上下文對象 239

11.5.2 訪問作用域範圍的隱含對象 240

11.5.3 情景套用:讀取page範圍內的JavaBean屬性值 241

11.5.4 訪問環境信息的隱含對象 241

11.6 定義和使用EL函式 244

11.6.1 定義和使用函式 244

11.6.2 情景套用:定義EL函式處理字元串中的回車換行符和空格符 245

11.6.3 定義和使用EL函式時常見的錯誤 247

11.7 實戰練習 248

11.7.1 訪問JavaBean屬性的典型套用 248

11.7.2 通過EL表達式訪問Servlet中的作用域 249

11.8 本章小結 250

第12章 JSTL標籤庫 235

12.1 JSTL標籤庫 252

12.2 下載與配置JSTL 253

12.2.1 下載JSTL標籤庫 253

12.2.2 配置JSTL 254

12.3 表達式標籤 255

12.3.1 標籤 255

12.3.2 標籤 256

12.3.3 標籤 258

12.3.4 標籤 259

12.4 URL相關標籤 260

12.4.1 標籤 260

12.4.2 標籤 262

12.4.3 標籤 263

12.4.4 標籤 264

12.4.5 情景套用:套用 和標籤重定向頁面並傳遞參數 264

12.5 流程控制標籤 265

12.5.1 標籤 265

12.5.2 標籤 266

12.5.3 標籤 267

12.5.4 標籤 268

12.5.5 情景套用:幸運大抽獎 268

12.6 循環標籤 269

12.6.1 標籤 269

12.6.2 標籤 271

12.7 實戰練習 272

12.7.1 利用JSTL標籤導入用戶註冊協定 272

12.7.2 根據參數請求顯示不同的頁面 273

12.8 本章小結 273

第13章 資料庫套用開發 258

13.1 JDBC技術 275

13.1.1 JDBC簡介 275

13.1.2 JDBC連線資料庫的開發流程 275

13.2 JDBC核心API 277

13.2.1 驅動程式管理器DriverManager 277

13.2.2 代表資料庫連線的Connection接口 278

13.2.3 執行SQL語句的Statement接口 279

13.2.4 預編譯執行SQL語句的PreparedStatement接口 280

13.2.5 結果集ResultSet接口 280

13.2.6 及時關閉連線 282

13.2.7 情景套用:JDBC連線SQL Server 2005資料庫 282

13.3 JDBC運算元據庫 283

13.3.1 添加數據 283

13.3.2 查詢數據 286

13.3.3 修改數據 289

13.3.4 刪除數據 291

13.3.5 批處理 293

13.3.6 情景套用:調用存儲過程 296

13.4 JDBC在Java Web中的套用 299

13.4.1 開發模式 299

13.4.2 分頁查詢 299

13.5 實戰練習 305

13.5.1 套用存儲過程運算元據 305

13.5.2 網站用戶註冊 306

13.6 本章小結 306

第3篇 高 級 篇

第14章 檔案上傳組件 292

14.1 jspSmartUpload組件簡介 309

14.2 jspSmartUpload組件的核心類 309

14.2.1 保存信息的File類 309

14.2.2 存儲檔案的Files類 311

14.2.3 提供表單信息的Request類 311

14.2.4 組件的核心SmartUpload類 312

14.2.5 情景套用:採用jspSmartUpload組件操作檔案 313

14.3 commons-fileload組件簡介 317

14.4 commons-fileupload組件的核心類 317

14.4.1 上傳的核心類DiskFileUpload 317

14.4.2 處理的核心類ServletFileUpload 319

14.4.3 限制檔案類型的SuffixFvileFilter類 319

14.4.4 情景套用:限制上傳檔案的類型 320

14.5 實戰練習 321

14.5.1 上傳中文名檔案 321

14.5.2 獲取表單的元素值 322

14.6 本章小結 322

第15章 解析XML 307

15.1 DOM技術 324

15.2 DOM編程 324

15.2.1 DOM接口 324

15.2.2 使用DOM讀取XML檔案 326

15.3 SAX技術 328

15.4 SAX編程 328

15.4.1 SAX常用接口 328

15.4.2 SAX實現方法 331

15.4.3 情景套用:使用SAX解析XML 332

15.5 SAX和DOM比較 335

15.6 選擇DOM和SAX 335

15.7 實戰練習 336

15.7.1 DOM解析XML 336

15.7.2 SAX解析XML 336

15.8 本章小結 337

第16章 套用Ajax技術 322

16.1 Ajax 簡介 339

16.1.1 Ajax概述 339

16.1.2 Ajax的開發模式 339

16.1.3 Ajax的優點 339

16.2 Ajax使用的技術 340

16.2.1 JavaScript腳本語言 340

16.2.2 XMLHttpRequest 340

16.2.3 XML語言 342

16.2.4 DOM技術 342

16.2.5 CSS技術 342

16.3 搭建Ajax開發框架 342

16.4 Ajax的MVC架構設計 343

16.5 Ajax開發需要注意的問題 347

16.5.1 瀏覽器兼容性問題 347

16.5.2 封裝XMLHttpRequest對象 347

16.5.3 性能問題 347

16.5.4 中文編碼問題 347

16.6 Ajax技術的典型套用 348

16.6.1 情景套用一:檢測用戶名 348

16.6.2 情景套用二:級聯下拉列表框 350

16.7 實戰練習 351

16.7.1 實現無刷新分頁 351

16.7.2 檢查用戶名是否重複 352

16.8 本章小結 353

第17章 Struts 2框架 338

17.1 Struts 2框架 355

17.1.1 理解MVC的原理 355

17.1.2 Struts 2框架的產生 355

17.1.3 Struts 2的結構體系 356

17.2 Struts 2 入門 356

17.2.1 獲取與配置Struts 2 356

17.2.2 創建第1個Struts 2程式 357

17.3 Action對象 359

17.3.1 認識Action對象 359

17.3.2 請求參數的注入原理 360

17.3.3 Action的基本流程 360

17.3.4 動態Action 361

17.3.5 套用動態Action 361

17.4 Struts 2的配置檔案 364

17.4.1 Struts 2的配置檔案類型 364

17.4.2 配置Struts 2包 364

17.4.3 配置名稱空間 364

17.4.4 Action的相關配置 365

17.4.5 使用通配符簡化配置 366

17.4.6 配置返回結果 367

17.5 Struts 2的開發模式 367

17.5.1 實現與Servlet API的互動 367

17.5.2 域模型DomainModel 368

17.5.3 驅動模型ModelDriven 369

17.6 Struts 2的標籤庫 370

17.6.1 套用數據標籤 370

17.6.2 套用控制標籤 372

17.6.3 套用表單標籤 374

17.7 Struts 2的攔截器 375

17.7.1 攔截器概述 375

17.7.2 攔截器API 376

17.7.3 情景套用:使用攔截器 377

17.8 數據驗證機制 378

17.8.1 手動驗證 378

17.8.2 驗證檔案的命名規則 379

17.8.3 驗證檔案的編寫風格 379

17.9 實戰練習 380

17.9.1 Struts 2處理表單數據 380

17.9.2 Struts 2標籤下的用戶註冊 380

17.10 本章小結 381

第18章 Hibernate技術 366

18.1 初識Hibernate 383

18.1.1 ORM原理 383

18.1.2 Hibernate簡介 383

18.2 Hibernate入門 384

18.2.1 獲取Hibernate 384

18.2.2 Hibernate配置檔案 384

18.2.3 編寫持久化類 385

18.2.4 Hibernate映射 386

18.2.5 Hibernate主鍵策略 387

18.3 Hibernate數據持久化 388

18.3.1 Hibernate實例狀態 388

18.3.2 Hibernate初始化類 388

18.3.3 保存數據 390

18.3.4 查詢數據 391

18.3.5 刪除數據 393

18.3.6 修改數據 393

18.3.7 延遲載入 394

18.4 使用Hibernate的快取 395

18.4.1 情景套用一:使用一級快取 395

18.4.2 情景套用二:配置和使用二級快取 396

18.5 實體關聯關係映射 397

18.5.1 數據模型與領域模型 398

18.5.2 理解並配置多對一單向關聯 398

18.5.3 理解並配置多對一雙向關聯 399

18.5.4 理解並配置一對一主鍵關聯 401

18.5.5 理解並配置一對一外鍵關聯 403

18.5.6 理解並配置多對多關聯關係 404

18.5.7 級聯操作 406

18.6 實體繼承關係映射 407

18.6.1 類繼承樹映射為一個表 407

18.6.2 每個子類映射為一個表 409

18.6.3 每個具體類映射為一個表 410

18.7 Hibernate查詢語言 411

18.7.1 HQL語言 411

18.7.2 查詢實體對象 412

18.7.3 條件查詢 413

18.7.4 HQL參數綁定機制 413

18.7.5 排序查詢 413

18.7.6 套用聚合函式 414

18.7.7 分組方法 414

18.7.8 聯合查詢 415

18.7.9 情景套用:利用子查詢獲取ID值最小的員工信息並顯示結果 416

18.8 實戰練習 416

18.8.1 修改員工信息 416

18.8.2 員工信息的模糊查詢 417

18.9 本章小結 418

第19章 Spring技術 403

19.1 Spring概述 420

19.1.1 Spring組成 420

19.1.2 獲取Spring 421

19.1.3 配置Spring 421

19.1.4 使用BeanFactory管理Bean 422

19.1.5 套用ApllicationContext 422

19.2 依賴注入 423

19.2.1 控制反轉與依賴注入 423

19.2.2 配置Bean 424

19.2.3 Setter注入 424

19.2.3 構造器注入 425

19.2.5 引用其他Bean 427

19.2.6 創建匿名內部JavaBean 428

19.3 自動裝配 428

19.3.1 按Bean名稱裝配 428

19.3.2 按Bean類型裝配 429

19.3.3 自動裝配的其他方式 430

19.4 Bean的作用域 431

19.4.1 Spring中的Bean 431

19.4.2 Singleton的作用域 431

19.4.3 Prototype的作用域 432

19.5 bean的特殊處理 432

19.5.1 初始化與銷毀 432

19.5.2 自定義屬性編輯器 433

19.6 AOP概述 435

19.6.1 AOP術語 435

19.6.2 情景套用:AOP的簡單實現 436

19.7 Spring的切入點 437

19.7.1 靜態與動態切入點 438

19.7.2 深入靜態切入點 439

19.7.3 深入切入點底層 439

19.7.4 Spring中的其他切入點 440

19.8 Aspect對AOP的支持 440

19.8.1 Aspect概述 440

19.8.2 Spring中的Aspect 441

19.8.3 DefaultPointcutAdvisor切入點配置器 441

19.8.4 NameMatchMethodPointcutAdvisor切入點配置器 442

19.9 Spring持久化 442

19.9.1 DAO模式 442

19.9.2 Spring的DAO理念 443

19.9.3 事務管理 445

19.9.4 套用JdbcTemplate運算元據庫 448

19.9.5 與Hibernate整合 449

19.9.6 情景套用:整合Spring與Hibernate在tb_user表中添加信息 450

19.10 實戰練習 451

19.10.1 登錄頁面國際化 451

19.10.2 Spring與Hibernate整合批量添加數據 452

19.11 本章小結 452

第4篇 實 戰 篇

第20章 技術交流平台——論壇 438

20.1 模組概述 455

20.1.1 開發背景 455

20.1.2 功能結構 455

20.1.3 系統流程 456

20.2 技術攻關 456

20.2.1 Struts 2、Spring 2及Hibernate 3整合流程 456

20.2.2 jQuery常用操作 456

20.3 資料庫設計 457

20.3.1 設計E-R圖 457

20.3.2 資料庫表設計 458

20.4 公共模組設計 459

20.4.1 Spring+Hibernate組合實現持久層 460

20.4.2 使用Struts 2標籤分頁 461

20.5 主頁面設計 463

20.5.1 首頁設計 463

20.5.2 論壇頁設計 464

20.6 文章維護模組設計 465

20.6.1 添加文章模組 465

20.6.2 瀏覽文章 467

20.6.3 文章回復 468

20.6.4 修改文章 469

20.6.5 刪除文章 469

20.7 文章搜尋模組設計 470

20.7.1 搜尋我的文章 470

20.7.2 根據關鍵字搜尋文章 471

20.7.3 熱門搜尋 473

20.7.4 搜尋文章作者的所有文章 474

20.7.5 搜尋回復作者的所有文章 475

20.8 開發總結 476

20.8.1 文章回復的異步提交難點 476

20.8.2 系統當前位置動態設定的難點 478

第21章 GO購網路商城 465

21.1 GO購網路商城概述 482

21.1.1 開發背景 482

21.1.2 需求分析 482

21.1.3 可行性分析 482

21.1.4 功能結構 482

21.1.5 系統流程 483

21.1.6 系統預覽 483

21.2 系統整體設計 484

21.2.1 邏輯分層設計 484

21.2.2 系統資料夾結構 484

21.2.3 頁面結構設計 485

21.2.4 開發環境 486

21.3 資料庫設計 486

21.3.1 E-R圖設計 486

21.3.2 創建資料庫及數據表 487

21.4 搭建項目環境 489

21.4.1 配置Struts 2 489

21.4.2 配置Hibernate 491

21.4.3 配置Spring 492

21.4.4 配置web.xml 493

21.5 公共模組設計 494

21.5.1 Hibernate的Session初始化類 494

21.5.2 泛型工具類 496

21.5.3 數據持久化類 496

21.5.4 分頁設計 498

21.5.5 字元串工具類 501

21.6 實體映射 502

21.6.1 實體對象設計 502

21.6.2 會員信息 503

21.6.3 訂單信息 503

21.6.4 訂單條目信息 504

21.6.5 商品信息 505

21.6.6 商品類別信息 506

21.7 登錄註冊模組設計 507

21.7.1 模組概述 507

21.7.2 實現註冊模組 507

21.7.3 實現登錄模組 510

21.7.4 單元測試 512

21.8 前台商品信息查詢模組設計 513

21.8.1 模組概述 513

21.8.2 實現商品類別分級查詢 513

21.8.3 實現商品搜尋 515

21.8.4 實現前台查詢其他商品 516

21.8.5 單元測試 518

21.9 購物車模組設計 520

21.9.1 模組概述 520

21.9.2 實現購物車的基本功能 520

21.9.3 實現訂單的相關功能 523

21.9.4 單元測試 526

21.10 後台商品管理模組設計 526

21.10.1 模組框架 526

21.10.2 實現商品管理功能 526

21.10.3 實現商品類別管理功能 531

21.10.4 單元測試 534

21.11 後台訂單管理模組設計 534

21.11.1 模組框架 534

21.11.2 實現後台訂單查詢 534

21.11.3 實現後台訂單狀態管理 536

21.11.4 單元測試 538

21.12 系統發布 538

21.12.1 配置Tomcat伺服器 538

21.12.2 配置DNS伺服器 539

21.13 開發總結 542

附錄 術語解釋 543

第1章 JavaWeb概述 543

第2章 搭建開發環境 544

第3章 資料庫的安裝與創建 544

第4章 Java語言基礎 544

第5章 JavaScript語言 545

第6章 初識XML 545

第7章 JSP語法 546

第8章 JSP內置對象 546

第10章 Servlet技術 546

第11章 EL表達式 546

第12章 JSTL標籤庫 546

第13章 資料庫套用開發 547

第14章 檔案上傳組件 547

第15章 解析XML 547

第16章 Ajax簡介 547

第18章 邂逅Hibernate技術 548

第19章 解密Spring技術 548

前言

讓想要學習編程的人員都能夠學會編程!

我可以學會編程嗎?

當然可以!即使你沒有基礎,即使你是非計算機專業畢業,即使你已過而立之年,甚至是只有國中畢業。我國最早的計算機反病毒專家、江民防毒軟體創始人王江民,國中畢業,38歲開始學習計算機,因為英語基礎不好,很多人認為他根本沒有學會編程的可能。但王江民沒有感覺自己不行,硬是克服各種困難,成為我國最成功的程式開發人員之一。

王江民學習編程的訣竅是什麼?

是實踐。王江民說:“計算機是實踐性非常強的學科。我搞計算機是用計算機,不是學計算機。” 王江民首先學的是BASIC語言。當時,為了輔導上國小的孩子,對軟體一片空白的王江民竟然決定編寫程式代替家長輔導。短短3個月,王江民就邊學邊實踐,編好了一套數學語文教學軟體,試過後效果奇佳,參加電腦報軟體交流,被評為第2名,譽為“教育軟體第一”。因為這次成功,極大激發了王江民對編程的興趣,使他從此把精力轉到了軟體領域。

所以說:實踐,是學習編程的最好方法,也是培養編程樂趣、捕獲發展機遇的最佳途徑。值得注意的是,不要等學完全部知識才去實踐,要隨時學習,隨時實踐,哪怕只學了一點點。

這本書適合我嗎?

非常適合!本書是學習JavaWeb編程的最佳選擇。所講內容通俗易懂,易於學習,貼近實踐。對於學習中的難點、重點,注意結合實際開發,採用情景套用的方式進行介紹和練習。本書光碟提供了完整的視頻講座,可以對照本書內容循序漸進進行學習。利用本書,不但可以學會編程,更能激發學習者理論聯繫實際的熱情,開發出符合市場需求的軟體和項目。

本書內容

本書分為基礎篇、核心篇、高級篇和實戰篇,總計21章。內容安排按照從零起步,循序漸進的學習順序,全面提高讀者學、練和用的能力。本書的知識結構如下圖所示。

Java Web開發學習手冊 Java Web開發學習手冊

本書特色

 通易俗懂

為了讓初學者易於學習,本書力求內容通俗易懂,講解寓教於樂。對於初學者較難理解的專業術語,本書都進行了形象的解釋,有些還提供了例圖。附錄中單獨將術語解釋提煉出來,供讀者學習時參考。例如,在講解Servlet工作流程時,首先詳細講解每一個步驟,並說明每一步中涉及的技術。然後配有圖形,如下圖所示。

Java Web開發學習手冊 Java Web開發學習手冊

視頻講座

為了方便讀者學習,隨附光碟中提供了14小時視頻講座。其講解細膩、層次清楚且互動性強,不但可以加深對書中內容的理解,還可以引導學習者掌握“是什麼”、“為什麼”、“怎么辦”和“應注意些什麼”的編程思維能力。視頻講座不僅詳細講解了書中的內容,還有效擴展了相關技術,並且提出了開發過程中易犯的各種錯誤。

 注重實用性

初學者經常會遇到這樣的情況,即書中講解的技術能夠理解,但不知道如何套用。例如,在學習JSP指令標記時候弄懂指令標記的作用和指令中包含的屬性是一個繁雜的過程。書中通過講解真實的實例,使讀者真正明白指令標記和屬性的作用。本書在介紹技術時,注意強調技術的實用性,並且通過實例突出技術的套用價值。對於一些典型的套用,書中通過“情景套用”欄目進行重點介紹。

 實戰互動練習

要掌握一項技術,最佳的方式就是多練習和多實踐。通過各章提供的多個實例任務,讀者可以檢驗知識的掌握程度。每個實例任務分為“題目描述”、“技術指導”和“緊急救援”3個部分,其中“題目描述”給出了實例功能的詳細描述和效果圖;“技術指導”給出了開發思路和關鍵技術;“緊急救援”提供了下載實例源碼和開發文檔的地址連結。

隨附光碟

為了幫助讀者學習和使用書中的實例,本書附贈DVD光碟。其中不僅提供了書中所有實例項目的原始碼、素材和光碟使用說明書,還提供了14小時視頻專題錄像及5個項目源碼。該光碟的目錄如下圖所示。

Java Web開發學習手冊 Java Web開發學習手冊

本書適用人群

本書是一部零基礎編程圖書,非常適合以下人員閱讀:

 零基礎的初學編程人員  國中級程式開發人員

 編程愛好者  想學習編程的在職人員

 大中專院校的老師和學生  相關培訓機構的老師和學員

本書參與作者

本書由明日科技組織編寫,參加編寫的有朱曉、盧瀚、王國輝、賽奎春、陳丹丹、李鍾尉、李偉、楊麗、顧麗麗、劉玲玲、孟范勝、董大永、李繼業、尹強和張磊等。由於作者水平有限,疏漏和不足之處在所難免,歡迎廣大讀者提出寶貴意見。

非學無以廣才,非志無以成學。

祝大家讀書快樂!

明日科技

2010年10月

相關詞條

熱門詞條

聯絡我們