SpringBoot国际化
目前正在学习Spring Boot框架 学习到国际化
刚开始配置好了国际化相关文件(messages.properties,messages_en_US.properties,messages_zh_CN.properties,messages_ja_JP.properties)
写了一个 MyLocaleResolver implements LocaleResolver 类
@Override
public Locale resolveLocale(HttpServletRequest httpServletRequest) {
String localeStr = httpServletRequest.getParameter("l");
Locale locale = Locale.getDefault();//获取默认语言环境
if (!StringUtils.isEmpty(localeStr)) {
String[] split = localeStr.split("_");
locale = new Locale(split[0], split[1]);
}
return locale;
}
然后写了 WebMvcConfig implements WebMvcConfigurer 类
@Bean
public LocaleResolver LocaleResolver(){
return new MyLocaleResolver();
}
前台页面
<#import "spring.ftl" as spring/>
.....
<form id="submitForm" action="" method="post">
<div id="login_tip">
<span id="login_err" class="sty_txt2"></span>
</div>
<div>
<@spring.message code="username"/>
<input type="text" name="username" class="username" id="name">
</div>
<div>
<@spring.message code="password"/>
<input type="password" name="password" class="pwd" id="pwd" onkeypress="EnterPress(event)" onkeydown="EnterPress()">
</div>
<div id="btn_area">
<input type="button" class="login_btn" id="login_sub" value="<@spring.message code='login'/>">
<input type="reset" class="login_btn" id="login_ret" value="<@spring.message code='reset'/>">
</div>
<a href="/test/tologin?l=zh_CN">中文</a>
<a href="/test/tologin?l=en_US">英文</a>
<a href="/test/tologin?l=ja_JP">日文</a>
</form>
之后在网页上运行 只能设置浏览器语言才能更换中英文,点击a标签始终不管用,在网上找了很久才解决
参考了一篇博客,忘记地址了,说是 在@Bean后加(name="localeResolver")
@Bean(name="localeResolver")
public LocaleResolver LocaleResolver(){
return new MyLocaleResolver();
}
重新运行,果然点击a标签也能切换了
浙公网安备 33010602011771号