jsp

1、JSP的概念
2、JSP的生命週期
1.當Web應用部署並啓動時,src中的java文件被編譯,
但jsp沒有編譯
2.當第一次訪問jsp頁面時,Web應用建立java文件,並編譯成class文件。jsp運行在內存中,等待被訪問
3.第二次訪問時,在內存中去找jsp,進行數據交互。
4.應用服務關閉,jsp才結束
3、JSP內置對象
out 輸出對象
request 請求對象 攜帶客戶端的數據
response 響應對象 設置響應的內容和格式 setContentType
session 會話對象 一個客戶端與服務器的一次對話
application 全局對象 一個web應用只有一個applicaiton,做用域全局
4、Request對象
經常使用方法
getParameter("name") 獲取頁面的參數,封裝成String
getParameterValues("name") 獲取頁面的參數,封裝成數組
setCharacterEncoding("UTF-8") 解決Post方式,中文亂碼問題
getRequestDispatcher("轉發的頁面").forward(req,resp)
轉發當前的req,resp對象到另外一個頁面,但地址欄不發生改變
5、Response對象
經常使用方法
setContentType 設置響應的格式
sendRedirect 重定向,客戶端直接跳轉到另外一個頁面,發起第二次請求
注意:
1.get/post方式的區別
2.解決中文亂碼的方法(get/post)
6、 重定向與轉發的區別:
一、轉發會保留以前的地址欄信息,不改變地址欄;重定向會改變地址欄
二、轉發將數據傳遞給另外一個頁面;重定向是發起新的請求,不保留上次的請求數據
三、轉發是一次請求;重定向是兩次請求。
7、Session對象
1.什麼是會話:客戶端和服務器一段連續的交互行爲(有時效性)
2.會話的做用:1.處理一個用戶的信息 2.在有效會話中跨頁面傳值
3.會話的失效:
1.超時,在指定時間內不作與服務器的交互。
2.一個版本瀏覽器一個sessionId,關閉瀏覽器後,sessionId丟失,
致使基本上關閉瀏覽器後,客戶端丟失Session
3.invalidate() 會話失效 推薦
4.removeAttribute() 刪除登陸信息,但sessionId不變 不推薦
8、application對象
一、什麼是application:web應用對象,上下文,
一個Web應用只有一個application
二、application的做用:
1.處理多個用戶的信息共享
2.整個應用中都能訪問到
三、注意:
1.application在一個Web應用啓動以後,就開始建立,當Web應用被移除,或是服務器關閉,纔會消失。
2.關閉瀏覽器,並不會關閉application。
9、四大做用域
數據類型 變量名 做用域 範圍
PageContext pageContext 一個page頁面內 一個頁面中
HttpServletRequest request 一次請求內 一次轉發的多個頁面
HttpSession session 一個會話內 一個會話中,屢次請求
ServletContext application 一個Web應用內 一個應用中,多個會話
10、cookie
1.什麼是Cookie:cookie是Web服務器保存在客戶端的一系列文本信息
2.cookie的做用
1. 對特定對象的追蹤 實現
2.各類個性化服務 3.簡化登陸
3.缺點:
安全性能 容易泄露信息
能夠被客戶端禁用
4.語法
建立cookie對象
Cookie newCookie = new Cookie(String key, String value);
寫入cookie response.addCookie(newCookie);
讀取
Cookie[] cookies = request.getCookies();
11、cookie與session的區別和聯繫
區別:
1.存儲位置:
session存放在服務器的內存中
cookie存放在客戶端的文件中
2.存儲數據的類型
session能夠存放Object類型
cookie只能存放String類型
3.生命週期
session中的數據隨會話消失而消失
session時效結束
主動註銷invalidate()
removeAttribute() 清除部分數據
cookie中的數據能夠長期持久化存在客戶端
cookie時效結束
瀏覽器清除cookie
removeAttribute() 清除部分數據
4.使用場景
session存放用戶我的重要信息
(主鍵id、暱稱、我的信息、所屬區域、所屬部門)
cookie 存放不重要信息
(我的收藏、購物車、加密後的帳號密碼)
5.數據量
session 理論上能夠沒有限制
cookie 存放量小
聯繫:
先有的cookie技術,再有的session技術
1.sessionId是由服務器建立,放在cookie中的
2.服務器 商城存物的密碼櫃
sessionId 祕密櫃生成的條紋碼
cookie 存有條紋碼的一張紙
客戶端 存放紙張的用戶本身的口袋
建立不一樣
1.第一次請求服務器時(sessionId爲空,cookie已經建立)
2.服務器判斷sessionId爲空,則分配一個sessionId和對應的內存
3.第一次響應時,客戶端的cookie就會把sessionId存放在cookie中
4.第二次請求,攜帶sessionId到服務器
5.服務器根據sessionId匹配對應的內存空間
6.瀏覽器關閉,sessionId爲空,服務器從新分配java

相關文章
相關標籤/搜索