- spring mvc的controller,service,dao都是单例模式,所以应该避免在单例中定义实例变量,防止窜数据。
- 在spring mvc,每次的request请求,tomcat服务器都会从线程池创建线程来响应请求,每个线程都是在自己独立的内存空间处理方法的,所以方法是线程安全的
- 对于成员变量的操作可以使用Threadlocal来保证线程安全。
4. Spring MVC 如何进行 异步处理请求,提高程序性能???
- @RequestParam, @RequestBody 区别
@RequestParam
本质是通过Request.getParameter() 获取的String简单类型参数。可以处理get方式的值,也可以处理post方式中 body data的值
@RequestBody
该注解常用来处理Content-Type 是 application/json, application/xml的数据。
它是通过使用HandlerAdapter 配置的HttpMessageConverters来解析post 的 body 数据,然后绑定到相应的bean或者hashmap上的