Controller中request的疑问

1. springmvc 的Controller 中 注入request 线程安全吗? 原理是什么?

2. springmvc 的Controller 中如下代码线程安全吗?

@Controller
public class AController{

    protected HttpServletRequest request;
    protected HttpServletResponse response;

    @ModelAttribute
    public void bindRequestObject(HttpServletRequest request, HttpServletResponse response) {
        this.request = request;
        this.response = response;
    }

    @RequestMapping("/test")
    public Result test(){
        System.out.println(request.toString());
    }
}

原文地址:https://www.cnblogs.com/oliveryu/p/10710383.html

时间: 2024-10-13 02:17:54

Controller中request的疑问的相关文章

springMVC中 request请求数据绑定到Controller入参 过程剖析

前言:Controller方法的参数类型可以是基本类型,也可以是封装后的普通Java类型.若这个普通Java类型没有声明任何注解,则意味着它的每一个属性都需要到Request中去查找对应的请求参数.众所周知,无论客户端传入的是什么类型的请求参数,最终都要以字节的形式传给服务端.而服务端通过Request的getParameter方法取到的参数也都是字符串形式的结果.所以,需要有一个把字符串形式的参数转换成服务端真正需要的类型的转换工具(基类:PropertyEditorSupport) 注:只有

spring mvc controller中获取request head内容

spring mvc controller中获取request head内容: @RequestMapping("/{mlid}/{ptn}/{name}") public String print(@PathVariable Integer mlid, @PathVariable String ptn, @PathVariable String name, HttpSession session, Model model, @RequestHeader String referer,

在SpringMVC Controller中注入Request成员域

主题 在工作中遇到1个问题....我们定义了一个Controller基类,所有Springmvc自定义的controller都继承它....在它内部定义一个@Autowired HttpServletRequest request;可不可以? 能不能从这个对象里取requestParamters和attributes? 多线程之间会不会影响? 思考 初次思考,我想这应该是不行的.为什么呢? 注入bean是在spring容器启动的时候...request的实现类是在tomcat里(我使用的serv

Spring4.0MVC学习资料,Controller中的方法详解和使用(四)

在以前,mvc的框架,基本上就是struts框架了.但是现在不一样了.springmvc出来了.spring的mvc框架不亚于struts了,springmvc出来了,我们有了更多的选择. Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块.使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还可以是 Struts 这样的 We

SpringMVC - controller中获取session

平时使用springMVC 在方法中访问session中经常很自然地调用Servlet API. 用起来非常直观方便,一直没有多考虑什么. 比如这样: @RequestMapping(value = "/logout") public String logout(HttpSession session) { session.removeAttribute("user"); return "/login"; } 但毕竟这样对Servlet API产

MVC 从View像Controller中传值

在上一篇博客中总结了一下从Controller像View中传值的几种方法.事实上看那些方法和在我们最初学习VB的时候一样,将数据库中的数据显示到前台的页面.数据库还是那个数据库,仅仅是如今前台变成了浏览器.传值的形式发生了变化.从View像Controller中传值有非常多种方法,仅仅简单的说明一下自己使用过的. 使用Form 使用Form提交的方法有非常多种,先结合上次博客中使用Model从Controller向View中传值 一般形式的form 在View中 @*自定义的详细要使用的view

在spring MVC的controller中获取ServletConfig

在使用SmartUpload进行文件上传时,需要用到srevletConfig: 如果是在servlet中写当然是很容易实现的: private ServletConfig config; //初始化Servlet final public void init(ServletConfig config) throws ServletException{ this.config=config; } init方法会在servlet初始化时获取到servletConfig. 但是在Controller

Spring MVC Controller中解析GET方式的中文参数会乱码的问题(tomcat如何解码)

Spring MVC Controller中解析GET方式的中文参数会乱码的问题 问题描述 在工作上使用突然出现从get获取中文参数乱码(新装机器,tomcat重新下载和配置),查了半天终于找到解决办法. 为何会乱码 Spring MVC 是基于Servlet,在Http请求到达Servlet解析之前,GET过来的URL已经被Tomcat先做了一次URLDecode.Tomcat对GET方式默认的URL解码结果是iso-8859-1而不是我认为的UTF-8. 解决方案 解决方案也很简单,除了平常

MVC中一个Form多个submit在controller中如何区分提交的是那个submit(如:登陆和注册)

1. 用Html.BeginForm(ActionName,ControllerName,Post)来实现controller-action的路由, 2. Form里的每个input的name值统一,比如都命名为commandName, 每个input的value设为不同值. 3. 更改Action处理方法的参数, 添加一个参数为commandName,则commandName的值为input设置的value. 在controller中