程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> JSP編程 >> 關於JSP >> JSP詳細篇——session

JSP詳細篇——session

編輯:關於JSP

JSP詳細篇——session


session對象

通過session可以在應用程序的Web頁面之間進行跳轉時,保存用戶的狀態,使整個用戶會話一直存在下去,直到浏覽器關閉。但是在一個會話中,客戶端長時間不向服務器發出請求,session會自動消失。這個時間取決於服務器,可以通過程序進行修改。

1.創建及獲取客戶的會話

通過session的setAttribute()和getAttribute()方法實現。

setAttribute()方法的語法格式:

session.setAttribute(String name,Object obj)

參數說明:

name:變量名

obj:保存在session范圍的對象

范例:

將用戶名“張三”保存到session范圍的username變量中

session.setAttribute(“usernme1”,”張三”);

getAtrribute()的語法格式

getAttrbite(String name);

參數說明:

name:保存在session變量范圍的參數名

getAttribute()方法的返回值是Object類型。

2.從會話中移除指定的綁定對象

removeAttribute()的語法格式:

removeAttribute(String name)

參數說明:

name:session中的變量名

范例:

將保存在session中的username移除

<%

session.removeAttribute(“username”);

%>

3.銷毀session對象

session對象的invalidate()方法可以銷毀session,其語法格式為:

Session.invalidate();

session對象被銷毀後,將不可在使用session對象,否則將報出Session already invalidate異常

4.會話超時的管理

在session對象中提供了設置會話生命周期的方法:

getLastAccessTime ():返回客戶端最後一次與會話有關的請求時間

getMaxInactiveInterval():以秒為單位,返回一個會話內兩個請求的最大時間間隔

setMaxInactiveInterval():以秒為單位,設置session的有效時間

5.session對象的應用

范例:

在index.jsp頁面中,提供用戶輸入用戶名的文本框;在session.jsp頁面中,將用戶 輸入的用戶名保存在session中,用戶在該頁面可以添加最喜歡的地方,在result .jsp頁面中,顯示用戶輸入的用戶名和最喜歡的地方

index.jsp頁面如下

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

My JSP 'index.jsp' starting page

Result.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<%

String place = request.getParameter("place");

session.setAttribute("place",place);//獲取保存在session中的對象

String name = request.getParameter("name");

%>

result page

Session.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<%

String name = request.getParameter("name");//獲取填寫的用戶名

session.setAttribute("name", name);//將用戶名保存在session中

%>

session jsp




  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved