应用层的会话功能?

时间:2013-08-27 17:57:08

标签: spring security layer

我希望我的应用程序层知道登录哪个用户来简化方法签名 - 例如方法(所有者,对象)将只是方法(对象)。我使用Spring Security来保证安全性,虽然我想让Spring离开我的应用程序层,因此只有一个单独的层用于此目的(和DTO转换) - 就像一个外观(适用于应用程序服务的适配器)。

如何在不使用spring的情况下让应用程序层知道其操作的用户上下文?

1 个答案:

答案 0 :(得分:1)

您需要注册一个FilterHandlerInterceptor来查看HttpSession,如果用户已登录,则存储某种User某些static ThreadLocal上下文中的表示形式。然后,任何类都可以访问包含ThreadLocal对象的静态User

当用户注销或会话过期时,您必须删除此对象。提示:HttpSessionListener