如何全局的对请求String类型入参使用trim
时间: 2024-01-22 10:02:28 浏览: 91
Js里面给String添加trim()方法,实现去掉字符串两边空格
3星 · 编辑精心推荐
如果您想在整个项目中对请求的 String 类型入参使用 trim 函数进行处理,您可以通过自定义 SpringMVC 的参数解析器来实现。
首先,您需要自定义一个参数解析器类,实现 HandlerMethodArgumentResolver 接口,并重写其 supportsParameter 和 resolveArgument 两个方法。supportsParameter 方法用于判断该解析器是否支持当前方法的参数类型,而 resolveArgument 方法则是用于实现参数的解析和处理。具体代码如下:
```java
public class StringTrimResolver implements HandlerMethodArgumentResolver {
@Override
public boolean supportsParameter(MethodParameter parameter) {
return parameter.getParameterType().equals(String.class);
}
@Override
public Object resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory) throws Exception {
String originalValue = webRequest.getParameter(parameter.getParameterName());
if (originalValue != null) {
return originalValue.trim();
} else {
return null;
}
}
}
```
接下来,您需要在 SpringMVC 的配置文件中注册该参数解析器,并将其加入到参数解析器列表中。具体代码如下:
```xml
<mvc:annotation-driven>
<mvc:argument-resolvers>
<bean class="com.example.StringTrimResolver" />
</mvc:argument-resolvers>
</mvc:annotation-driven>
```
这样,当您的请求参数中包含 String 类型的参数时,SpringMVC 会自动调用 StringTrimResolver 类中的 resolveArgument 方法进行参数的解析和处理,从而实现全局的对请求 String 类型入参使用 trim 函数的功能。
阅读全文