1、application.properties
// 注意这里的 myi18n 是一个文件夹名称 // messages 也是一个文件夹名称 // 最后一个 message 它是 message.properties、message_en_US.properties 、message_zh_CN.properties // 这三个配置文件的前缀去掉国家信息的值 spring.messages.basename=myi18n.messages.message
2、配置文件目录
这里有三个配置文件分别是 message.properties、message_en_US.properties (美式英语)、message_zh_CN.properties(中文),springboot 会根据语言信息选择对应的国际化文件,如果在指定的路径下面找不到对应的 message_xxx.properties 配置文件,则会使用默认的配置文件 message.properties
3、静态页面取出国际化配置的值
在 thymeleaf 静态页面中,使用国际化表达式 #{} 来取出配置文件中的值
<h1 class="h3 mb-3 font-weight-normal" th:text="#{login.tip}">Please sign in</h1>
4、问题点
在 thymeleaf 的静态页面使用 #{} 取值的时候出现了如下错误
百度查找原因,说是 IDEA 版本不对,需要在 springboot 的配置文件 application.properties 更改 basename 的写法
# spring.messages.basename=myi18n.messages.message // 换成这种写法经测试有效 spring.messages.basename=myi18n/messages/message