java中的session對象如何獲取
獲取session對象
1.在springmvc中
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
2.通過ServletActionContext獲取
HttpServletRequest request = ServletActionContext.getRequest(); HttpSession session = request.getSession();
String userSession = request.getSession().getAttribute("userId")+StringUtil.EMPTY;
在session存取值和對象的方法
在后臺方法中存值的一種方式,將對象或者值用session的setAttribute(key,value);方法存值,
//登錄方法 public BaseResult user_login(String userNO,String password,HttpSession session){ BaseResult result = new BaseResult(); User user = userService.login(userNO, password); loginJSON json= new loginJSON(); if (user==null) { result.setSuccess(false); result.setMessage("用戶名/密碼錯誤"); } else { result.setSuccess(true); result.setMessage("登陸成功"); json.setUserData(user); json.setAllDept((List)userService.getAllDep(userNO).get("allDept")); json.setAuthDept((List)userService.getAllDep(userNO).get("authDept")); json.setCorwd(userService.getGE("corwd")); json.setMeetType(userService.getGE("meetType")); json.setOrganizer(userService.getGE("organizer")); result.setData(json); } //將對象封裝到session中 session.setAttribute("user",user); return result; }
取值我們可以用HttpServletRequest得到session,用session.getAttribute(key);得到value。
注意:
HttpServletRequest可以當(dāng)參數(shù)在方法中傳遞(需要一層層傳遞,并不推薦),也可以用如下代碼在方法中的得到session。
HttpServletRequest request =((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); HttpSession session=request.getSession(); User user=(User) session.getAttribute("user"); //
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java Web使用簡單的批處理操作(記事本+Tomcat)
這篇文章主要介紹了Java Web使用簡單的批處理操作 ,需要的朋友可以參考下2014-10-10Spring之底層架構(gòu)核心概念Environment及用法詳解
這篇文章主要介紹了Spring之底層架構(gòu)核心概念-Environment,本文結(jié)合示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-12-12解決因jdk版本引起的TypeNotPresentExceptionProxy異常
這篇文章介紹了解決因jdk版本引起的TypeNotPresentExceptionProxy異常的方法,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-12-12Maven依賴中scope的runtime和provied的區(qū)別及說明
這篇文章主要介紹了Maven依賴中scope的runtime和provied的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-11-11Java使用DateFormatter格式化日期時間的方法示例
這篇文章主要介紹了Java使用DateFormatter格式化日期時間的方法,結(jié)合具體實例分析了java使用DateFormatter格式化日期時間的相關(guān)操作技巧,需要的朋友可以參考下2017-04-04Java編程技巧:if-else優(yōu)化實踐總結(jié)歸納
這篇文章主要介紹了Java中避免過多if-else的幾種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2021-06-06