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

简介: 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月前
|
算法 关系型数据库 Java
Springboot集成PostGIS完成路径规划
因为公司里需要做关于林区防火方面的项目,需要完成着火后山区路径的导航,但.....某德的功能似乎只能到达山区的边上,后边的路就需要自己完成导航了。搞了一个周终于有所效果了,也遇见了很多的坑,在此记录一下,希望以后不要踩坑。需要上述的环境才能进行路径导航,环境的搭建可以参阅
89 5
|
3月前
|
安全 Java API
在Java中识别泛型信息
以上步骤和示例代码展示了怎样在Java中获取泛型类、泛型方法和泛型字段的类型参数信息。这些方法利用Java的反射API来绕过类型擦除的限制并访问运行时的类型信息。这对于在运行时进行类型安全的操作是很有帮助的,比如在创建类型安全的集合或者其他复杂数据结构时处理泛型。注意,过度使用反射可能会导致代码难以理解和维护,因此应该在确有必要时才使用反射来获取泛型信息。
117 11
|
Java
SpringBoot下国际化配置
SpingBoot实现国际化配置步骤
1963 0
SpringBoot下国际化配置
|
12月前
|
机器学习/深度学习 调度 计算机视觉
深度学习中的学习率调度:循环学习率、SGDR、1cycle 等方法介绍及实践策略研究
本文探讨了多种学习率调度策略在神经网络训练中的应用,强调了选择合适学习率的重要性。文章介绍了阶梯式衰减、余弦退火、循环学习率等策略,并分析了它们在不同实验设置下的表现。研究表明,循环学习率和SGDR等策略在提高模型性能和加快训练速度方面表现出色,而REX调度则在不同预算条件下表现稳定。这些策略为深度学习实践者提供了实用的指导。
487 2
深度学习中的学习率调度:循环学习率、SGDR、1cycle 等方法介绍及实践策略研究
|
存储 Docker 容器
Docker工作目录迁移
Docker工作目录迁移
|
开发框架 自然语言处理 Java
如何在Spring Boot中实现动态多语言支持
如何在Spring Boot中实现动态多语言支持
1395 3
|
存储 Oracle 关系型数据库
Oracle索引知识看这一篇就足够
Oracle索引知识看这一篇就足够
|
SQL 数据可视化 Java
分享三个java低代码开发平台,每个都很能打,建议收藏
来讲讲近期比较流行的低代码开发平台一词。低代码的目的是将可重复性的编程工作通过平台实现,将开发人员从没有技术含量的增删改查开发中解放出来,让其专注于更有价值的开发工作,例如业务建模、数据库设计、流程设计、API核心开发、业务逻辑开发等工作。
分享三个java低代码开发平台,每个都很能打,建议收藏
|
自然语言处理 前端开发 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请求参数通用校验及国际化支持
|
算法 数据安全/隐私保护 Python