spring将HTTP请求对象绑定到Thread为该请求提供服务的对象

如果您使用Servlet 2.5 Web容器,并且在Spring之外处理请求 DispatcherServlet(例如,使用JSF或Struts时),则需要注册org.springframework.web.context.request.RequestContextListener ServletRequestListener。对于Servlet 3.0+,可以使用该WebApplicationInitializer 接口以编程方式完成。或者,或者对于旧容器,将以下声明添加到Web应用程序的web.xml文件中:


    ...
    
        
            org.springframework.web.context.request.RequestContextListener
        
    
    ...

或者,如果您的侦听器设置存在问题,请考虑使用Spring RequestContextFilter。过滤器映射取决于周围的Web应用程序配置,因此您必须根据需要进行更改。以下清单显示了Web应用程序的过滤器部分:


    ...
    
        requestContextFilter
        org.springframework.web.filter.RequestContextFilter
    
    
        requestContextFilter
        /*
    
    ...

DispatcherServletRequestContextListenerRequestContextFilter所有做同样的事情,即将HTTP请求对象绑定到Thread为该请求提供服务的对象。这使得请求和会话范围的bean可以在调用链中进一步使用。

你可能感兴趣的:(spring,spring)