我们的系统需要支持国际化应用,就是可以在不同的语言环境下,方便的进行切换。大家都知道,在 Spring 中国际化,也叫 i18n,为啥叫这个名字呢?因为国际化英文是 internationalization ,在 i 和 n 之间有 18 个字母,所以叫 i18n,就通过 AcceptHeaderLocaleResolver 对国际化提供了支持,我们只需要通过简单配置,就可以在项目中直接使用国际化功能了。这一支持在 Spring Boot 中得到进一步的简化,在 Spring Boot 中,我们也可以通过寥寥数行代码就能方便的实现国际化功能。
系统要实现支持完整的国际化应用,在开发过程中需要多方面的支持,例如后端做国际化、前端页面也要做国际化,共同搭配,才能真正实现国际化的功能。本文我们先实现后端 Spring Boot服务端 的国际化,后面我再实现前端操作层的国际化(Vue 的国际化),最后把这两个结合应用到我们本次的 项目中。
在开始进行国际化支持开发之前,我们需要做对一些事情,否则可能会出现Spring boot端信息传输到前端页面后乱码的情况。
1. 先要保证我们编辑的properties文件是用UTF-8格式编写,通过设置idea的文件编码来指定message文件的编码格式。
打开 File -> Settings -> Editor -> File Encodings,修改相关编码格式为UTF-8,如下图: