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

简介: 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

目录
相关文章
|
缓存 Java Maven
Java本地高性能缓存实践问题之SpringBoot中引入Caffeine作为缓存库的问题如何解决
Java本地高性能缓存实践问题之SpringBoot中引入Caffeine作为缓存库的问题如何解决
876 1
|
Java
SpringBoot下国际化配置
SpingBoot实现国际化配置步骤
2455 0
SpringBoot下国际化配置
|
SQL NoSQL 关系型数据库
常用数据库的最大并发和实际并发
常用数据库的最大并发和实际并发
2789 0
|
自然语言处理 前端开发 Java
Spring Boot MVC请求参数通用校验及国际化支持
目录 一、Validation及国际化配置 1、添加依赖 2、校验失败提示消息国际化配置 3、application.properties 4、国际化资源文件 二、代码演示 1、全局异常处理 2、MessageUtils工具类 3、响应VO 2、测试Controller和请求DTO 3、多语言属性文件 4、测试用例 (1)简单对象UserReqDTO测试 (2)包含List集合对象的ChargeRuleReqDTO测试
Spring Boot MVC请求参数通用校验及国际化支持
|
存储 Oracle 关系型数据库
Oracle索引知识看这一篇就足够
Oracle索引知识看这一篇就足够
|
缓存 Java Spring
Spring Boot做国际化
Spring Boot做国际化
2284 0
|
Java Spring 容器
详解java参数校验之:顺序校验、自定义校验、分组校验(@Validated @GroupSequence)
详解java参数校验之:顺序校验、自定义校验、分组校验(@Validated @GroupSequence)
|
Arthas 监控 Java
arthas使用教程
arthas使用教程
4361 0
|
Java Spring 容器
同一接口有多个实现类,怎么来注入一个指定的实现?@Resource、@Autowired、@Qualifier
同一接口有多个实现类,怎么来注入一个指定的实现?@Resource、@Autowired、@Qualifier
1389 0

热门文章

最新文章