解决校验失败时,提示信息国际化失效问题

简介: SpringBoot校验(Validator)失败,使用MessageSource国际化失效问题记录

前言:

spring-boot-validator参数校验系列(1)--------基本参数校验

spring-boot-validator参数校验系列(4)--------自定义参数校验异常

SpringBoot下国际化配置

一、问题场景

结合前言中教程,想实现校验国际化提示,根据步骤一步一步来,可国际化未生效。

查阅资料得知,需要重写WebMvcConfigurer#getValidator方法!!!

@ConfigurationpublicclassMyWebMvcConfigimplementsWebMvcConfigurer {
@AutowiredprivateMessageSourcemessageSource;
/*** 设置MessageSource文件位置* @return*//* @Beanpublic MessageSource messageSource(){ReloadableResourceBundleMessageSource messageSource = new ReloadableResourceBundleMessageSource();messageSource.setDefaultEncoding("UTF-8");messageSource.setBasenames("classpath:i18n/messages");return messageSource;}*//*** 这里特别要说明下,这里需要重写 WebMvcConfigurer#getValidator方法才能使校验时国际化生效!!!* @return*/@OverridepublicValidatorgetValidator(){
LocalValidatorFactoryBeanlocalValidatorFactoryBean=newLocalValidatorFactoryBean();
localValidatorFactoryBean.setValidationMessageSource(messageSource);
returnlocalValidatorFactoryBean;
    }
}

PostMan访问

英文国际化

image.png

中文国际化

image.png

目录
相关文章
|
3月前
|
SQL 前端开发 Java
如何干掉你代码里的if,让请求参数校验变的更加优雅?
日常开发过程中,代码各处充满着“陷阱”,稍不留神,就容易出现各类稀奇古怪的Bug,这回咱们来说开发中经常处理的情况,即:参数校验!大多数需要校验参数的情况,都出现在”数据交互“这个场景下,比如前端向后端提交表单数据、后端调用兄弟部门的RPC接口等。今天我们重点站在后端的角度,聊聊不同场景下的多种参数校验手段。
|
5月前
|
Java Spring 容器
详解java参数校验之:顺序校验、自定义校验、分组校验(@Validated @GroupSequence)
详解java参数校验之:顺序校验、自定义校验、分组校验(@Validated @GroupSequence)
|
5月前
|
前端开发 JavaScript
阿里云验证码2.0 验证时报错 前端页面获取的验证参数有问题,动态JS加载失败,请问怎么解决啊?急,急,急。
用户反馈校验时遇到错误,日志显示验证码参数获取异常。采用无痕验证,失败后,返回`{captchaResult:false,bizResult:false}`,未触发滑块二次验证。
|
6月前
|
SQL 测试技术 数据安全/隐私保护
密码组件校验规则该如何测试?
密码组件校验规则该如何测试?
|
6月前
|
数据格式 Python
添加 自定义校验方法,让用户自定义校验规则
添加 自定义校验方法,让用户自定义校验规则
77 0
|
6月前
|
数据格式 Python
添加 常用校验方法,校验常见数据格式
添加 常用校验方法,校验常见数据格式
65 0
|
前端开发
IE校验问题
IE校验问题
48 0
|
运维 前端开发 JavaScript
如何优雅的校验参数
数据的校验是交互式网站一个不可或缺的功能,前端的js校验可以涵盖大部分的校验职责,如用户名唯一性,生日格式,邮箱格式校验等等常用的校验。但是为了避免用户绕过浏览器,使用http工具直接向后端请求一些违法数据,服务端的数据校验也是必要的,可以防止脏数据落到数据库中,如果数据库中出现一个非法的邮箱格式,也会让运维人员头疼不已。可以使用本文将要介绍的validation来对数据进行校验。
376 0
如何优雅的校验参数