在接收 String
类型参数时,前后可能存在一些空格,如果未曾去除就直接保存的话,可能会对一些特殊的业务场景造成致命影响。为了杜绝这种情况,需要在接收参数时进行前后空格清除处理
而接收 String
参数主要存在俩种情况
配置
接收 url
或 form
表单中的参数
对于这种情况,Spring MVC
提供了一个 org.springframework.beans.propertyeditors.StringTrimmerEditor
类,我们只需要在参数绑定中进行注册就行,方式如下
1 |
|
接收Request Body
中JSON
或XML
对象参数
在这里,Spring MVC
是使用 Jackson
对参数进行反序列化,所以对于 String
的处理是在 Jackson
中配置
1 |
|
测试
Controller
1 |
|
对象
1 | public class User { |
测试类
1 | .class) (SpringRunner |
重构
对与这种所有项目都需要的通用配置,我们应该抽取一个公共模块,然后通过引入依赖来实现自动配置
创建 commons
模块
创建自动配置类 WebMvcStringTrimAutoConfiguration
1 |
|
配置引入依赖后存在 SpringBootApplication
,EnableAutoConfiguration
注解时自动配置
在 resurces
创建 META-INF/spring.factories
文件
1 | # 自动配置 |