How can we obtain request parameters in the preHandle method of Spring MVC?
In Spring MVC, there are several ways to access request parameters:
- Obtain parameters using the HttpServletRequest object: Add the HttpServletRequest object as a parameter in the preHandle method and then retrieve the request parameters using its getXXX method. For example:
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
String param1 = request.getParameter("param1");
String param2 = request.getParameter("param2");
// 处理参数
...
return true;
}
- The @RequestParam annotation is used to retrieve parameters, which can be directly bound to method parameters. For example:
public boolean preHandle(@RequestParam("param1") String param1, @RequestParam("param2") String param2, HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
// 处理参数
...
return true;
}
- In order to retrieve path parameters, you can use the @PathVariable annotation. This is useful when dealing with RESTful requests.
public boolean preHandle(@PathVariable("param1") String param1, @PathVariable("param2") String param2, HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
// 处理参数
...
return true;
}
The above are several common ways to access request parameters. Choose the appropriate method based on specific needs to retrieve the parameters.