Springboot 国际化通过Header中Accept-Language的值切换语言实战与源码解析
前言
接到将系统进行国际化改造的需求,简单理解就是系统要跟随浏览器进行中英文语言切换,但由于老系统返回的数据有些是用中文的,导致还需要把所有中文改成英文字段,然后再配置中英文配置文件进行映射(不管在什么场景下,请不要用中文或者拼音,太难搞了)
实战操作
一、添加配置文件
1、在resource文件夹下新建 i18n 文件夹
2、新建 Resource Bundle 资源文件,包括中英文的配置文件
3、配置 i18n
新增一个配置类,只需要在这个配置类中,注入这个bean,LocaleResolver即可
这里选用的是 AcceptHeaderLocaleResolver()这个类,目的是使用请求头中的Accept-Language的属性进行语言切换
@Bean
public LocaleResolver localeResolver() {
AcceptHeaderLocaleResolver slr = new AcceptHeaderLocaleResolver();