以前使用SpringMVC实现国际化的方式:
1.编写国际化配置文件
2.使用ResourceBundleMessageSource管理国际化资源文件
3.在页面使用fmt:message取出国际化内容
SpringBoot默认的国际化是根据浏览器的语言自动切换的,但是我们普遍情况下是根据按钮切换的,为此,我们需要另外再添加自己的国际化规则。
第一步:设置编码
第二步:编写对应的中英文Resource Bundle。
第三步:我们的配置文件可以放在类路径下叫message.properties,这样就可以直接使用国际化功能。但是我们此次放在了i18n文件夹下,application.properties中设置国际化配置文件的基础名,我这边的基础名就是login。
第四步: 去登录页面获取国际化的值:到这一步只能实现根据浏览器设置的语言来显示页面的语言。
第五步:编写自己区域信息解析器(SpringBoot自动配置好了管理国际化资源文件的组件,默认的是根据请求头获取Locale,进行国际化),必须要实现LocaleResolver。
此处的index.html会转发到login,html,字母"l"是随便取的名字。这样点按钮时就会带上国际化的值。
第六步:为了自己编写的LocaleResolver能生效,需要将其添加至容器中。
config配置类中注册自己编写的国际化组件MyLocaleResolver