springboot用户登录后,需要把用户信息展示到每个页面的导航栏,这种功能一般如何实现

悠悠知我心 发布于 2021/02/28 17:26
阅读 1K+
收藏 1

【开源中国 APP 全新上线】“动弹” 回归、集成大模型对话、畅读技术报告”

登录的时候,使用session记录了下用户的id
我有两个思路
1、在拦截器Interceptor,在preHandle方法中,通过HttpServletRequest,获取到session,读取到用户id,查询到用户的信息,然后设置到request对象中(request.set("user",user));在每个展示页面的控制器方法中,通过HttpServletRequest,获取到user。
2、使用@ModelAttribute注解一个方法,在方法中获取到用户信息,添加到model中,可以直接在模板上面使用。
这种问题,通常的解决思路是什么呢?

加载中
1
慕容狗蛋
慕容狗蛋

登陆后放到 cookie 里,页面从 cookie 中获取

0
sprouting
sprouting

很简单,一个存,一个取,你的项目简单的话就放session中,如果大就放缓存,然后根据你的登录者的唯一标识去获取存储的数据并展示。

0
绿水本无忧
绿水本无忧

每个界面都从数据库读吗?那你为啥不直接缓存到前端。。每次修改更新,退出删除不就行了?

0
丶Lion
丶Lion

ShiroUtils.getUserName()

0
f
freezingsky

登陆后,前端本地存,然后,前端自己玩!

0
迷城技术
迷城技术

这个和springboot关系不大,取决于你用的什么技术栈

前后端分离?标签语言?jsp?你用的啥,就用不同的方法来取值

0
浮云翌日
浮云翌日

登录后放前端的localstorage中。

0
luckyhu
luckyhu

可以存储到session啥 session就是共享的

正在写一个关于springboot的系列,中间会涉及到这个技术点

OSCHINA
登录后可查看更多优质内容
返回顶部
顶部