探讨 Spring MVC 能否注入 Request 和 Response

一、引言

当我们第一次接触到 Java Web 开发,从最原生的 Servlet 方法开始,我们就知道在 doGet() 或者 doPost() 方法有两个形参,分别是 HttpServletRequestHttpServletResponse,这两个参数代表了 web 容器为我们封装的 HTTP 请求和 HTTP 响应。

当 Java Web 进化到 SpringMVC 中,一系列的杂活脏活都交给了 DispatcherServlet 前端控制器来处理。

回到正文,传统情况下,我们访问一个接口,想要从中取得 request 对象,或者是 response 对象,亦或者是 httpSession 对象,都是直接作为形参传进来。举个例子,前端传递 token,先经过 filter 得到用户ID,并将它存入 request 中,那么在每个接口中取得用户ID,都要这样:

Spring MVC 解决 HTTP 406 错误

在一般Java Web项目中,406错误,是比较少见的错误,导致原因一般是以下两种:

原因一: 缺少jackJson

导入依赖即可: