# session保存作用域 ###### tags: `Java Web-Servlet` ### session保存作用域是和具體的某一個session對應的 用戶在登錄服務器後,服務器端會針對客戶端來判斷 若是首次登陸的客戶端,會生成新的ID,並且會將該ID的資料保存在對應的保存作用域 其他客戶端登陸後,因為使用的是不同ID,因此無法取用其他ID存放在保存作用域的資料 這是為了避免客戶端導入非正確客戶端的資料,導致顯示錯誤  前兩行是A客戶端,第三行是B客戶端嘗試取用A客戶端的資料,因為sessionID不同,因此無法獲取A客戶端保存的session,顯示null失敗  #### 常用的API: void session.setAttribute(k,v) Object session.getAttribute(k) void removeAttribute(k) ```java= //演示向HttpSession保存數據 public class Demo04Servlet extends HttpServlet { @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.getSession().setAttribute("uname","lina"); } } ``` ```java= //演示向HttpSession獲取數據 public class Demo05Servlet extends HttpServlet { @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { Object unameObj = request.getSession().getAttribute("uname"); System.out.println(unameObj); } } ``` ## 重點 #### 1.session保存作用域是和具體的某一個session對應的 #### 2.常用的APT: void session.setAttribute(k,v):設置session值的value,保存到key之中 Object session.getAttribute(k):利用session的key值,找到value void removeAttribute(k):刪除session中對應key的value
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up