前言
JSP是由Sun公司倡導、許多公司參與,於1999年推出的一種動態網頁技術標準。JSP是基於Java Servlet以及整個Java體系的Web開發技術,利用這一技術可以建立安全、跨平台的先進動態網站,這項技術還在不斷地更新和最佳化中。JSP以Java技術為基礎,又在許多方面做了改進,具有動態頁面與靜態頁面分離,能夠脫離硬體平台的束縛,以及編譯後多平台運行等優點,JSP已經成為Internet上的主流開發工具。
本書第2版對一些例子和部分內容做了適度的調整、更新和修改,考慮到資料庫在Web設計中的重要作用,本書第2版加強了資料庫的知識容量,特別採用了目前在Web設計中占主導地位的MySQL資料庫作為主要的資料庫來講解有關知識點。本書分為10章,第1章主要介紹Tomcat的安裝與配置,通過一個簡單的JSP頁面初識JSP概貌。第2章詳細講解JSP的基本語法,包括程式片,頁面指令等重要內容。第3章主要講解Tag檔案與標記,特別重點強調了怎樣使用Tag檔案實現代碼復用。第4章主要講解JSP的內置對象,特別重點講解了session會話對象。第5章講解輸入/輸出流技術,重點介紹了檔案的上傳與下載以及怎樣使用Tag標記實現檔案的讀/寫操作。第6章涉及的內容是資料庫,也是Web套用開發的非常重要的一部分內容,採用MySQL資料庫講解主要知識點,也特別介紹了各種資料庫的連線方式。第7章講解JavaBean的使用,是JSP技術中很重要的內容,即怎樣使用JavaBean分離數據的顯示和處理,給出了許多有一定套用價值的例子。第8章講解Servlet,對servlet對象的運行原理給予了詳細的講解。在第9章對Servlet在MVC開發模式中的地位給予了重點介紹,並按照MVC模式給出了易於理解MVC設計模式的例子,本章中的許多例子都是大多數Web開發中經常使用的模組。第10章是一個完整的網站,完全按照MVC模式開發設計,其目的是掌握一般Web套用中常用基本模組的開發方法。
希望本教材能對讀者學習JSP有所幫助,並請讀者批評指正。
編者
2014年10月
目錄
第1章JSP概述
1.1什麼是JSP
1.2JSP引擎與Tomcat伺服器
1.2.1安裝JDK
1.2.2安裝與啟動Tomcat伺服器
1.3JSP頁面與Web服務目錄
1.3.1JSP頁面
1.3.2Web服務目錄
1.4JSP運行原理
1.5實驗: 編寫、保存、運行JSP頁面
習題1
第2章JSP頁面與JSP標記
2.1JSP頁面的基本結構
2.2變數和方法的聲明
2.2.1聲明變數
2.2.2聲明方法
2.3Java程式片
2.4表達式
2.5JSP中的注釋
2.6JSP指令標記
2.6.1page指令
2.6.2include指令標記
2.7JSP動作標記
2.7.1include動作標記
2.7.2param動作標記
2.7.3forward動作標記
2.7.4plugin動作標記
2.7.5useBean動作標記
2.8實驗1: JSP頁面的基本結構
2.9實驗2: JSP指令標記
2.10實驗3: JSP動作標記
習題2
第3章Tag檔案與Tag標記
3.1Tag檔案的結構
3.2Tag檔案的存儲目錄
3.3Tag標記
3.3.1Tag標記與Tag檔案
3.3.2Tag標記的使用
3.3.3Tag標記的標記體
3.4Tag檔案中的常用指令
3.4.1tag指令
3.4.2include指令
3.4.3attribute指令
3.4.4variable指令
3.4.5taglib指令
3.5Tag標記的嵌套
3.6實驗1: 使用標記體
3.7實驗2: 使用attribute指令和variable指令
習題3
第4章JSP內置對象
4.1request對象
4.1.1獲取用戶提交的信息
4.1.2處理漢字信息
4.1.3常用方法舉例
4.1.4使用Tag檔案處理有關數據
4.1.5處理HTML標記
4.2response對象
4.2.1動態回響contentType屬性
4.2.2response的HTTP檔案頭
4.2.3response重定向
4.2.4response的狀態行
4.3session對象
4.3.1session對象的Id
4.3.2session對象與URL重寫
4.3.3session對象存儲數據
4.3.4在Tag檔案中使用session對象
4.3.5session對象的生存期限
4.3.6使用session設定時間間隔
4.3.7計數器
4.4out 對象
4.5application對象
4.5.1application對象的常用方法
4.5.2用application製作留言板
4.6實驗1: request對象
4.7實驗2: response對象
4.8實驗3: session對象
習題4
第5章JSP中的檔案操作
5.1File類
5.1.1獲取檔案的屬性
5.1.2創建目錄
5.1.3刪除檔案和目錄
5.2使用位元組流讀/寫檔案
5.2.1FileInputStream類和FileOutputStream類
5.2.2BufferedInputStream類和BufferedOutputStream類
5.3使用字元流讀/寫檔案
5.3.1FileReader類和FileWriter類
5.3.2BufferedReader類和BufferedWriter類
5.4RandomAccessFile類
5.5檔案上傳
5.6檔案下載
5.7實驗1: 使用檔案位元組流讀/寫檔案
5.8實驗2: 使用檔案字元流加密檔案
習題5
第6章在JSP中使用資料庫
6.1MySQL資料庫管理系統
6.1.1下載、安裝與啟動MySQL
6.1.2建立資料庫
6.2JDBC
6.3連線MySQL資料庫
6.3.1載入JDBC資料庫驅動程式
6.3.2建立連線
6.3.3MySQL亂碼解決方案
6.4查詢記錄
6.4.1順序查詢
6.4.2隨機查詢
6.4.3條件查詢
6.4.4排序查詢
6.4.5模糊查詢
6.5更新記錄
6.6添加記錄
6.7刪除記錄
6.8用結果集運算元據庫中的表
6.8.1更新記錄中的列值
6.8.2插入記錄
6.9預處理語句
6.9.1預處理語句的優點
6.9.2使用通配符
6.10事務
6.11常見資料庫連線
6.11.1連線Microsoft SQL Server資料庫
6.11.2連線Oracle資料庫
6.11.3連線Microsoft Access資料庫
6.12實驗1: 查詢記錄
6.13實驗2: 更新記錄
6.14實驗3: 刪除記錄
習題6
第7章JSP與JavaBean
7.1編寫JavaBean和使用JavaBean
7.1.1bean的編寫與保存
7.1.2使用bean
7.2獲取和修改bean的屬性
7.2.1getProperty動作標記
7.2.2setProperty動作標記
7.3bean的輔助類
7.4使用bean的簡單例子
7.4.1三角形
7.4.2猜數字
7.4.3日曆
7.4.4四則運算
7.4.5瀏覽圖片
7.5JavaBean與檔案操作
7.5.1讀檔案
7.5.2寫檔案
7.5.3上傳檔案
7.6JavaBean與資料庫操作
7.6.1查詢記錄
7.6.2分頁顯示記錄
7.7標準化考試
7.8實驗1: 有效範圍為request的bean
7.9實驗2: 有效範圍為session的bean
7.10實驗3: 有效範圍為application的bean
習題7
第8章Java Servlet基礎
8.1Servlet類與servlet對象
8.2編寫web.xml
8.3servlet對象的創建與運行
8.4servlet對象的工作原理
8.4.1servlet 對象的生命周期
8.4.2init方法
8.4.3service方法
8.4.4destroy方法
8.5通過JSP頁面訪問servlet
8.5.1通過表單向servlet提交數據
8.5.2通過超連結訪問servlet
8.6共享變數
8.7doGet和doPost方法
8.8重定向與轉發
8.8.1sendRedirect方法
8.8.2RequestDispatcher對象
8.9使用session
8.10實驗: 使用servlet讀取檔案
習題8
第9章MVC模式
9.1MVC模式介紹
9.2JSP中的MVC模式
9.3模型的生命周期與視圖更新
9.3.1request周期的JavaBean
9.3.2session周期的JavaBean
9.3.3application周期的JavaBean
9.4MVC模式的簡單實例
9.4.1JavaBean和Servlet與配置檔案
9.4.2計算三角形和梯形的面積
9.5MVC模式與註冊登錄
9.5.1JavaBean與Servlet管理
9.5.2配置檔案管理
9.5.3資料庫設計與連線
9.5.4註冊
9.5.5登錄與驗證
9.6MVC模式與資料庫操作
9.6.1JavaBean與Servlet管理
9.6.2配置檔案與資料庫連線
9.6.3MVC設計細節
9.7MVC模式與檔案操作
9.7.1模型(JavaBean)
9.7.2控制器(servlet)
9.7.3視圖(JSP頁面)
9.8實驗: 計算等差、等比數列的和
習題9
第10章手機銷售網
10.1系統模組構成
10.2資料庫設計與連線
10.2.1資料庫設計
10.2.2資料庫連線
10.3系統管理
10.3.1頁面管理
10.3.2JavaBean與Servlet管理
10.3.3配置檔案管理
10.3.4圖像管理
10.4會員註冊
10.4.1視圖(JSP頁面)
10.4.2模型(JavaBean)
10.4.3控制器(servlet)
10.5會員登錄
10.5.1視圖(JSP頁面)
10.5.2模型(JavaBean)
10.5.3控制器(servlet)
10.6瀏覽手機
10.6.1視圖(JSP頁面)
10.6.2模型(JavaBean)
10.6.3控制器(servlet)
10.7查看購物車
10.7.1視圖(JSP頁面)
10.7.2模型(JavaBean)
10.7.3控制器(servlet)
10.8查詢手機
10.8.1視圖(JSP頁面)
10.8.2模型(JavaBean)
10.8.3控制器(servlet)
10.9查詢訂單
10.9.1視圖(JSP頁面)
10.9.2模型(JavaBean)
10.9.3控制器(servlet)
10.10退出登錄