gpt4 book ai didi

java - 如果我有一个加载用户对象的处理程序拦截器,将其添加到请求属性,我是否要强制转换以获取对象?

转载 作者:行者123 更新时间:2023-12-02 08:31:17 25 4
gpt4 key购买 nike

我计划创建一个处理程序拦截器,它将在调用 Controller 之前触发(或者我将执行此预操作触发)。

然后我将检查用户的cookie,并根据cookie中的sessionid加载用户对象。

然后我会将用户对象添加到请求属性中。

现在,如果我想在 Controller 操作中检索用户对象,是否将其强制转换为 (User) ?

我相信我的 freemarker 模板我可以正确执行 ${user.name} 吗?或者是 user.getUsername ?

最佳答案

首先,最好将用户放在 session 中,这样每次请求时就不会发生 cookie > 用户转换。

其次,您可以通过调用

从那里( session /请求)获取它
User user = (User) session.getAttribute(USER_KEY); // this is s String constant

或者,您可以创建一个类UserHolder,在其中传递一个HttpSession,它会为您提供用户,从而避免 Controller 中的强制转换。

相同的方法可以用于 HttpServletRequest

关于java - 如果我有一个加载用户对象的处理程序拦截器,将其添加到请求属性,我是否要强制转换以获取对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3286645/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com