前段时间刚好学习了尚硅谷的springboot的初级教程,其中讲到了国际化,这两天老大安排我来做之前一个网站的国际化(准确的说是做多语言化,因为其他的语言是藏文、蒙语等这些非国际化语言)

这篇博客主要记录一下在国际化过程中遇到的一个坑:
Springboot(SpringMVC)实现国际化

<div class="ovh">
	<div class="fl w83"><img src="/images/login-bg3.png" alt=""></div>
	<div class="mgl83">
		<!--cor134e90 fb-->
		<p class="fs21 h68 lh68 " style="color: white">aaaaa</p>
		<h3 th:text="#{login.btn}"></h3>
	</div>
</div>

可以看到页面出现了错误**??i18n.login.title_en_US??**,这个应该是thmeleaf引擎没有取到值导致渲染异常。
怎么解决的?
应该把application.properties的配置basename的路径改一下,修改成:

spring.messages.basename=i18n/login

之前我是按照教程配的spring.messages.basename=i18n.login(这个‘.’要改成’/'把我折腾了老半天。)
最后,我猜想我不能用点的原因可能是与springboot的版本有关系或者是thymeleaf的版本
新手上路,多多指教~

相关文章: