文章目录
- 四、解决方案
一、需求:
最近项目中有这么一个需求,当用户当前的语言环境是 中文时,导出的 excel 文件为中文的,当用户的语言环境为英文时,导出的excel文件为英文的。即需要实现国际化
的功能。
项目中是使用 SpringBoot
来搭建的,因此就使用了 Spring 的国际化功能。
二、出现的问题
- 在
window
和mac
平台上发现是可以实现国际化
的,但是在linux
平台上发现始终是国际化失败
,始终是一种语言。
三、代码结构
1、配置文件中的配置
2、java代码中的使用
String result = messageSource.getMessage(code, null, `Locale('en_US')`)
发现此句在linux
上使用获取不到自己想要的结果。
四、解决方案
通过debug
发现,当语言环境为中文(zh_CN)
时,居然获取到的是英文环境(en_us)
,因此尝试将messages_zh_CN.properties
文件修改成 messages_zh_cn.properties
文件,问题得到解决。
即:将 zh_CN
或 en_US
这些后缀等修改成小写
的即解决问题。