SpringBoot中处理处理国际化

SpringBoot中处理处理国际化

    • 1. 创建SpringBoot项目
    • 2. resource下创建i18n目录
    • 3. 右键i18n新建资源包
    • 4. 弹框中添加需要支持的国际化语言
    • 5. messages.properties中添加需要国际化的键
    • 6. application.yaml添加配置
    • 7. 国际化工具
    • 8. 使用功能
    • 9 场景问题

1. 创建SpringBoot项目

2. resource下创建i18n目录

3. 右键i18n新建资源包

在这里插入图片描述

4. 弹框中添加需要支持的国际化语言

在这里插入图片描述

5. messages.properties中添加需要国际化的键

在这里插入图片描述
在这里插入图片描述

6. application.yaml添加配置

spring:messages:basename: i18n/messages

7. 国际化工具

/*** 国际化工具类**/
@Component
public class MessageUtils {private static MessageSource messageSource;public MessageUtils(MessageSource messageSource) {MessageUtils.messageSource = messageSource;}/*** 获取单个国际化翻译值*/public static String get(String msgKey) {try {return messageSource.getMessage(msgKey, null, LocaleContextHolder.getLocale());} catch (Exception e) {return msgKey;}}}

8. 使用功能

@RestController
@RequestMapping("/i18n")
public class I18nController {@RequestMapping("/user")public String getUserName() {return MessageUtils.get("validator.error_message.not_null");}
}

9 场景问题

  1. 国际化报错 No message found under code ‘xxx.xxxx‘ for locale ‘zh_CN‘
org.springframework.context.NoSuchMessageException: No message found under code 'user.name' for locale 'zh_CN'.at org.springframework.context.support.DelegatingMessageSource.getMessage(DelegatingMessageSource.java:76) ~[spring-context-5.3.23.jar:5.3.23]

错误原因:

  1. 没有创建messages.properties文件。
    只创建了messages_en_US.properties和messages_zh_CN.properties两个文件。
    messages.properties 这个是默认的配置,其他的则是不同语言环境下的配置。这个文件一定不能少。
  2. 自定义文件目录配置错误,配置中没有写文件名前缀messages

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/227637.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

spring 基于注解管理bean @Autowired

目录结构: 代码示例: UserContronller.java package com.atguigu.spring6.autowired.controller;import com.atguigu.spring6.autowired.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springfra…

阿里云对象存储OSS外网流出流量异常增多导致费用上升的解决方法

本文介绍在使用阿里云的对象存储 OSS服务过程中,外网流量消耗异常增多并导致异常的费用支出这一情况的问题发现、问题定位与几种不同的问题解决方法。 细细数来,写博客已经有近3的历史了,这成为了一项已经陪伴我大半人生的工作;也…

二十章总结

一.线程简介 二.创建线程 1.继承Thread类 Thread类中常用的两个构造方法如下: public Thread():创建一个新的线程对象。 public Thread(String threadName):创建一个名称为threadName的线程对象。 继承Thread类创建一个新的线程的语法如下: p…

设计模式 简单工厂 工厂方法模式 抽象工厂模式

工厂模式介绍 工厂模式是我们最常用的实例化对象模式了,是用工厂方法代替new操作的一种模式。它是创建型模式。 简单工厂 简单工厂模式是指由一个工厂对象决定创建出哪一种产品类的实例, 但它不属于GOF 23种设计模式 简单工厂适用于工厂类负责创建的对象较少的场景,…

如何在Go中并发运行多个函数

引言 Go语言的一个流行特性是它对并发的一流支持,即一个程序可以同时做多件事。随着计算机从更快地运行单个代码流转向同时运行更多代码流,能够并发地运行代码正在成为编程的重要组成部分。为了让程序运行得更快,程序员需要把程序设计成并发运行,这样程序中并发的每一部分…

mmpose 使用笔记

目录 自己整理的可以跑通的代码: 图片demo: 检测加关键点 自己整理的可以跑通的代码: 最强姿态模型 mmpose 使用实例-CSDN博客 图片demo: python demo/image_demo.py \tests/data/coco/000000000785.jpg \configs/body_2d_k…

AE-制作绚丽的图形通道

目录 1.新建合成命名为四边形 2.在合成中新建纯色层命名为tao 3.在纯色层上添加RG Trapcode –>Tao 效果,设置Segment参数 4. 在合成中添加摄像机 5.设置Tao Repeat Paths 相关参数,并调整摄像机的位置 6.设置Tao的 Material & Lighting 等…

基于Springboot的高校教学评价系统的设计与实现(源码+调试)

项目描述 临近学期结束,还是毕业设计,你还在做java程序网络编程,期末作业,老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。今天给大家介绍一篇基于Springboot的高校教…

如何通过TortoiseGit可视化工具查看Git管理的版本树和信息(工作树变更)内容

一、版本树 黑色直线:master分支和基于master分支拉取基础分支都在这条线上,是一条直线。 其他线条:新开分支一定会增加一条线,但不一定每一条线分别代表一个分支。 注:如果一直是一个人,在同一个本地分支…

(三)Java 基本数据类型

目录 一. 前言 二. 基本数据类型 2.1. char(字符型) 2.2. byte(字节型) 2.3. short(短整型) 2.4. int(整型) 2.5. long(长整型) 2.6. float&#xff…

前端如何设置模板参数

1.背景: 最近接到一个需求,在一个类似chatGpt的聊天工具中,要在对话框中设置模板,后端提供了很多模板参数,然后要求将后端返回的特殊字符转成按钮,编辑完成后在相应的位置拼接成字符串。 2.效果&#xff1a…

C++ 类模板

目录 前言 类模板语法 类模板和函数模板的区别 类模板没有自动类型推导的使用方式 类模板在模板参数列表中可以有默认参数 类模板中成员函数创建时机 类模板对象做函数参数 指定传入的类型 参数模板化 整个类模板化 类模板与继承 类模板成员函数类外实现 类模板分…

在Spring Cloud中使用OpenFeign完成从一个微服务上传到另一个微服务中

跨服务上传文件,嘿嘿,来一篇实用性高的,本篇将主要完成在Feign中上传文件到另一个微服务中。步骤如下: 我们需要在服务提供者和服务消费者的项目中添加相应的依赖: 对于服务提供者的项目,你需要添加Sprin…

Redis设计与实现之集合及有序集

目录 一、集合 1、编码的选择 2、编码的切换 3、 字典编码的集合 4、集合命令的实现 5、 求交集算法 6、求并集算法 7、 求差集算法 二、有序集 1、编码的选择 2、编码的转换 3、ZIPLIST 编码的有序集 4、SKIPLIST 编码的有序集 三、如何添加元素到集合或有序集中…

万兆网络之屏蔽线序接法(中)

在介绍优质网线选购之前,先简单介绍一下水晶头 1毛钱一颗跟1元一颗的水晶头,往往是金手指厚度差别,你可以想象压制的时候可能会有什么情况 另外,一些3元一颗的镀金水晶头会有15U、30U之类的是电镀厚度单位,数值越大镀…

文档安全加固:零容忍盗窃,如何有效预防重要信息外泄

文档安全保护不仅需要从源头着手,杜绝文档在使用和传播过程中产生的泄密风险,同时还需要对文档内容本身进行有效的保护。为了防范通过拷贝、截屏、拍照等手段盗窃重要文档内容信息的风险,迅软DSE加密软件提供了文档加密保护功能,能…

10 新字符设备驱动文件

一、新字符设备驱动原理 因为 register_chrdev 和 unregister_chrdev 两个函数是老版本驱动文件,现在可以用新字符设备驱动 API 函数。 1. 分配和和释放设备号 使用 register_chrdev 函数注册字符设备的时候只需要给定一个主设备号即可,但是这样会带来两…

信息安全和网络安全的区别

信息安全与网络安全都属于安全领域,但它们的范围和重点不同。 信息安全主要关注数据的保护,包括对敏感数据进行加密、防止数据丢失或泄露等措施。信息安全通常与数据存储、传输和处理相关。 而网络安全更侧重于保护计算机系统和网络免受攻击、病毒、蠕…

Mac安装软件显示文件已损坏处理方法

今天安装软件,突然遇到了文件已损坏,扔到废纸篓的情况,于是搜索了下解决办法,跟大家分享下,希望对你有所帮助 一、检查安全性设置 打开【设置】-【隐私与安全】,下拉找到安全性,将安全性更改为…

System作为系统进程陔如何关闭?

一、简介 system进程是不可以关闭的,它是用来运行一些系统命令的,比如reboot、shutdown等,以及用来运行一些后台程序,比如ntfs-3g、v4l2loopback等。system进程也被用于运行一些内核模块,比如nvidia、atd等。system进程…