springmvc中获得HttpServletRequest request方法

方法1: http://blog.sina.com.cn/s/blog_4f92b18701010gfq.html
在web。xml中配置一个监听
<listener>
        <listener-class>
            org.springframework.web.context.request.RequestContextListener
        </listener-class>
    </listener>

之后就可以在程序使用了
HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();



方法二:没测试 http://www.oschina.net/question/274766_101880
我用Spring MVC , 在Controller方法里每次都要写一个HttpServletRequest request参数,Spring才会注入request,然后我就产生了一个神奇的想法,写一个BaseController把request注入,然后其它Controller继承后就不需要再写request就可以直接使用父类的request:
abstract class BaseController {
    private HttpServletRequest request;
 
    public HttpServletRequest getRequest() {
        return request;
    }
 
    @Resource
    public void setRequest(HttpServletRequest request) {
        this.request = request;
    }
     
}

事实上这么也成功注入了,子Controller可以使用request。

猜你喜欢

转载自panyongzheng.iteye.com/blog/2197335