1.在servlet中,要得到session並設值 要用 request.getSession().setAttribute();
2.在jsp頁面中
<% request.getSession().setAttribute("name","zzc");%>
<%=session.getAttribute("name")%>
3.servlet是個類,要想使用session必須先獲取 session對象。
4.jsp中可以直接使用session ,原因是因為他把session對象內置了,就像java.lang.*那4個包他默認導入一樣。
5.Jsp 也是最后要編譯成一個個類,容器遇到jsp文件 就會自動創建 一個session對象 無須自己再寫,
也就是 session =request.getSession(); 容器替你完成。
6.requst.getSession().setAttribute("自己定義的名字",值)和requst.getSession().getAttribute("自己定義的名字",值)
7.session的創建:
由於session是jsp的內建對象,你在jsp中創建session的時候直接session.setAttribute("key", value);
就可以了。 但在java文件中你要引入javax.servlet.http.HttpSession;這個包,然后通過
HpptSession session = request.getSession();
session.setAttribute("key", value);
8.session的取值:
jsp中直接session.getAttribute("key");就可以了。
但在java文件中你要引入javax.servlet.http.HttpSession;這個包,然后通過
HpptSession session = request.getSession();
session.getAttribute("key");
9.得到session中的對象。
session的廢除:jsp和java兩種文件中的操作方法同上,調用session.removeAttribute("key");方法。或者通過session.invalidate();使所有的session失效。
Response.Write("提示信息"); 把信息輸出在頁面上。
Response.Write("<script>window.alert('" + sMsg + "')</script>"); 把信息現在在對話框中。
MessageBox("提示信息");是Window.Form中顯示一個對話框,並把提示信息顯示在該對話框中。
request 請求 請求完就完了 ,比如 jsp頁面請求servlet
response 相應 對請求的響應 比如 servlet相應請求,給出個jsp
session 整個會話期, 比如 從打開IE 到關閉所有的IE
二者之間的關系
jsp的Session和Servlet的Session本質上是一致的,區別是:jsp中session是作為隱式對象存在的,可以直接使用;Servlet中的session需要手動提取后才能使用.
HttpSession是Java平台對session機制的實現規范,因為它僅僅是個接口,具體到每個web應用服務器的提供商,除了對規范支持之外,仍然會有一些規范里沒有規定的細微差異。
1、session機制
http是無狀態的協議,客戶每次讀取web頁面時,服務器都打開新的會話,而且服務器也不會自動維護客戶的上下文信息,session就是一種保存上下文信息的機制,它是針對每一個用戶的,變量的值保存在服務器端,通過SessionID來區分不同的客戶,session是以cookie或URL重寫為基礎的,默認使用cookie來實現,系統會創造一個名為JSESSIONID的輸出返回給客戶端Cookie保存。
2、jsp和Servlet的關系
jsp是servlet的一種簡化,jsp是Servlet技術的擴展,本質上就是Servlet的簡易方式。JSP編譯后是“類servlet”。Servlet和JSP最主要的不同點在於,Servlet的應用邏輯是在Java文件中,並且完全從表示層中的HTML里分離開來。而JSP的情況是Java和HTML可以組合成一個擴展名為.jsp的文件。JSP側重於視圖,Servlet主要用於控制邏輯
一個瀏覽器只能對應一個Session,就像一台電腦對應一個IP一樣!
記住了,在Seesion下面還有窗口ID哦!這樣它就能區分各個窗口了!