获取 request 及其线程安全性分析
原文Spring中获取request的几种方法,及其线程安全性分析
前言
本文将介绍在使用 Spring MVC 开发中,获取 request 对象的几种方法,并讨论其线程安全性。
概述
在使用 Spring MVC 开发 Web 系统时,经常需要在处理请求时使用 request 对象。比如:获取客户端 IP 地址、请求的 URL、header 中的属性(Cookie、授权信息)、body 中的数据等。
由于在 Spring MVC 中,处理请求的 Controller、Service 等对象都是单例的,因此获取 request 对象时最需要注意的问题,便是 request 对象是否线程安全:当有大量并发请求时,能否保证不同请求/线程中使用不同的 request 对象。