1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > java session缓存_Java服务端采用Session的缓存oauth2.0授权用户信息

java session缓存_Java服务端采用Session的缓存oauth2.0授权用户信息

时间:2023-06-06 11:56:15

相关推荐

java session缓存_Java服务端采用Session的缓存oauth2.0授权用户信息

前面有讲到session和cookie的一些简单的区别和比较,我们继续为java在服务端如何对session的操作留下笔记,这里以用户的登陆和退出操作为实用场景,简单讲解session的建立、清空等操作!

①用户登陆获取用户信息并放置到session中,在项目中简单代码如下:/**

*@Description:用户oauth授权登录

*@param@paramrequest

*@param@paramresponse

*@param@paramcode

*@param@paramstate

*@param@return

*@authordapengniao

*@date1月13日下午3:59:14

*/

@RequestMapping("login")

publicModelAndViewUserOAuthLogin(ModelAndViewview,

HttpServletRequestrequest,HttpServletResponseresponse,

@RequestParam(value="code",required=false)Stringcode,

@RequestParam(value="state",required=false)Stringstate){

OauthCode_GetUseInfooauth=newOauthCode_GetUseInfo(code);

try{

UserInfouserinfos=oauth.getUserInfo();//通过公用方法用code获取用户基本信息

request.getSession().setAttribute("unionid",userinfos.getUnionid());//将用户unionid缓存到session

request.getSession().setAttribute("petname",

userinfos.getNickname());//将昵称缓存到session

view.setViewName("index");

returnview;

}catch(Exceptione){

logger.error(e,e);

returnview;

}

}

将用户相关信息放入到session中,服务端就可以根据session中是否存在用户信息给与用户不同的权限,这个功能我们在下面将采用filter(过滤器)实现详细讨论!

②用户在页面做退出操作的时候需要将用户session消息清空,以方便控制用户权限,简单代码如下:/**

*@Description:用户登录退出

*@param@paramrequest

*@authordapengniao

*@date1月22日下午12:03:16

*/

@RequestMapping("loginout")

publicvoiduserLoginOut(HttpServletRequestrequest){

request.getSession().invalidate();

}

这里将用户信息清空,用户再次访问的时候就会需要用户再次登录才能进行下一步操作!

下篇我们将采用filter和session去实现用户权限的控制操作,感谢你的翻阅,如有疑问可以留言一起讨论!

除非注明,否则文章均由 崔用志博客 整理发布,欢迎转载。

如果喜欢,可以点此订阅本站

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。