Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在SpringMVC过滤器或拦截器中处理会话管理的最佳方法_Java_Jsp_Session_Spring Mvc - Fatal编程技术网

Java 在SpringMVC过滤器或拦截器中处理会话管理的最佳方法

Java 在SpringMVC过滤器或拦截器中处理会话管理的最佳方法,java,jsp,session,spring-mvc,Java,Jsp,Session,Spring Mvc,要求: 在每个操作意味着每个控制器方法,即处理程序之前,我必须检查会话是否有效。 如果会话有效,请检查会话中的用户登录详细信息是否可用,否则应在会话中设置这些详细信息。 若会话无效,则应将其重定向到登录页面 请告诉我哪一种适合我的要求。请使用。它将在会话中存储一个安全上下文对象,保存所有凭据等。例如,将确保此对象有效,或将用户重定向到登录页面。您还可以在dispatcher servlet中配置自定义的拦截器 <mvc:interceptors> <bean class

要求:

在每个操作意味着每个控制器方法,即处理程序之前,我必须检查会话是否有效。 如果会话有效,请检查会话中的用户登录详细信息是否可用,否则应在会话中设置这些详细信息。 若会话无效,则应将其重定向到登录页面


请告诉我哪一种适合我的要求。

请使用。它将在会话中存储一个安全上下文对象,保存所有凭据等。例如,将确保此对象有效,或将用户重定向到登录页面。

您还可以在dispatcher servlet中配置自定义的
拦截器

<mvc:interceptors>
    <bean class="com.CusInterceptor"/>
</mvc:interceptors>

同意@Stefan的观点。使用Spring安全性(我们在mvc应用程序中使用相同的会话身份验证/验证)。 但请记住,Ajax调用需要进行一些调整,然后才能让它们重定向到登录页面。。否则,您只会得到一个错误页面响应,您可能正在或可能没有在JS(客户端)级别解析/处理该响应

public class CusInterceptorextends HandlerInterceptorAdapter {
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {

    // verify user session here and process it for further operations  
    }