作用域通訊物件:session使用者在登入時通過`void setAttribute(String name,Object value)`方法設定使用者名稱和密碼。點選登入按鈕後,跳轉到另外一個頁面顯示使用者
阿新 • • 發佈:2021-01-23
作用域通訊物件:session
session物件基於會話,不同使用者擁有不同的會話。同一個使用者共享session物件的所有屬性。作用域開始客戶連線到應用程式的某個頁面,結束與伺服器斷開連線。session物件通常用來儲存使用者的資訊,方便伺服器跟蹤每個使用者的操作狀態。
使用方法常用的void setAttribute(String name,Object value)
、以值/名的形式存放新的值,void getAttribute(String name)
、根據名稱獲取屬性值
例項:使用者在登入時通過void setAttribute(String name,Object value)
void getAttribute(String name)
方法得到屬性值
Session.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>登入</title> </head> <% session.setAttribute("username", "小黑"); session.setAttribute("pwd", "123456"); %> <body> <form action="loginsuccess.jsp" method="post"> 使用者名稱:<input type="text" name="username" value=<%=(String) session.getAttribute("username")%>> 密碼:<input type="password" name="pwd" value=<%=(String) session.getAttribute("pwd")%>><br> <input type="submit" value="登入"> </form> </body> </html>
loginsuccess.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>資訊展示</title> </head> <body> <% String username = (String) session.getAttribute("username"); String pwd = (String) session.getAttribute("pwd"); session.setMaxInactiveInterval(10);//設定會話有效期10秒 %> <h1 align="center">登入成功</h1> 使用者名稱:<%=username%><br> 密碼:<%=pwd%> </body> </html>
結果:
session.setMaxInactiveInterval(10);//設定會話有效期10秒
間隔10秒後,再次重新整理登入頁面,使用者資訊這不顯示。認為規定此次會話結束。