java web--Servlet技術(二)
目錄
四、Servlet常用對象及其方法
1.JSP中有9個內置對象,其中的7個內置對象都是有Servlet類或接口直接或間接創建的對象。
JSP內置對象 | |
---|---|
out | javax.servlet.http.HttpServletResponse |
request | javax.servlet.http.HttpServletRequest |
response | javax.servlet.http.HttpServletResponse |
session | javax.servlet.http.HttpSession |
application | javax.servlet.ServletContext |
config | javax.servlet.ServletConfig |
exception | javax.servlet.ServletException |
2.JSP中的request,response,session,application這四個對象的方法和屬性完全適用於Servlet,但需要通過適當的方法創建或獲取這些對象。
request | javax.servlet.http.HttpServletRequest |
response | javax.servlet.http.HttpServletResponse |
session | javax.servlet.http.HttpSession |
application | javax.servlet.http.HttpServletContext |
五、JSP與Servlet的數據共享
1.基於請求的數據共享
請求共享(request)的數據有兩類:請求參數數據、請求屬性數據。
(1).請求參數數據
共享請求參數的共享過程爲:參數的傳遞、參數的保存(保存在請求對象內)、參數的獲取。
①、請求參數的傳遞
- 通過表單提交後,有表單action屬性指定進入的頁面域或Servlet,它們所接受的表單數據就是請求參數數據。
- 帶參數的超鏈接,所傳遞的參數也是請求參數。
- 在地址欄中,輸入的參數也是請求參數。
- 在JSP中,利用forward或include動作時,利用參數子動作標籤所傳遞的數據也是請求參數。
②、請求參數的獲取
String request.getParameter("參數變量名稱");
(2).共享請求屬性數據
①.請求屬性數據的形成與保存
request.setAttribute("屬性名",對象類型的屬性值);
②.請求屬性數據的獲取
對象類型 (強制類型轉換)request.getAttribute("屬性名");
③.若不想再共享某屬性,可以從request中刪除
request.removeAttribute("屬性名");
2.基於會話的數據共享
(1).會話屬性數據的形成與保存
session.setAttribute("屬性名",對象類型的屬性值);
(2).會話屬性數據的獲取
對象類型 (強制類型轉換)session.getAttribute("屬性名");
(3).刪除共享會話屬性
application.removeAttribute("屬性名");
3.基於應用的數據共享
(1).應用屬性數據的形成與保存
application.setAttribute("屬性名",對象類型的屬性值);
(2).應用屬性數據的獲取
對象類型 (強制類型轉換)session.getAttribute("屬性名");
(3).刪除共享應用屬性
application.removeAttribute("屬性名");
六、MVC開發模式與應用案例
1.MVC開發模式
在開發一個WEB應用程序時,通常需要同時使用3種技術,並分別承擔不同的責任,並分別承擔不同的職責。JSP一般用來編寫用戶界面層的信息顯示,充當視覺層的角色(V);Servlet主要用來扮演任務的執行者,一般充當着控制層的角色(C);JavaBean主要實現業務的邏輯處理,充當模型層的角色(M)。
2.應用案例