Spring Boot2.X国际化文件编写配置

这篇文章主要介绍了Spring Boot" title="Spring Boot">Spring Boot2.X国际化文件编写配置,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

国际化文件的编写

messages.properties

init project

messages_en_US.properties

init project

messages_zh_CN.properties

页面非连接配置国际化只需要:

spring.messages.basename=i18n.login

1: 1.5X版本配置的方式

链接配置

编写类 实现LocaleResover

public class LocaleSetting implements LocaleResolver {

@Override

public Locale resolveLocale(HttpServletRequest request) {

/**

* l=('en_US) 取得连接字符串

*/

String lstr = request.getParameter("l");

Locale locale = Locale.getDefault();

if(!StringUtils.isEmpty(lstr)){

String[] split = lstr.split("_");

locale = new Locale(split[0],split[1]);

}

return locale;

}

@Override

public void setLocale(HttpServletRequest request, HttpServletResponse response, Locale locale) {

}

}

一个Spring Boot 只需要存在一个继承 WebMvcConfigurationSupport,所以都在这个类 配置

在下面这里配置

public class AppConfig extends WebMvcConfigurationSupport

/**

* 配置国际化

*/

@Bean

public LocaleResolver initLocale(){

return new LocaleSetting();

}

2: 2.x版本的配置方式

/**

* 拦截器映射

*/

@Override

protected void addInterceptors(InterceptorRegistry registry) {

registry.addInterceptor(localeChangeInterceptor());

super.addInterceptors(registry);

}

/**

* 配置国际化

*/

@Bean

public LocaleResolver localeResolver() {

SessionLocaleResolver slr = new SessionLocaleResolver();

// 默认使用的语言

slr.setDefaultLocale(Locale.SIMPLIFIED_CHINESE);

return slr;

}

@Bean

public LocaleChangeInterceptor localeChangeInterceptor() {

LocaleChangeInterceptor lci = new LocaleChangeInterceptor();

// 参数名 用于区别使用语言类型

/**

* <a class="btn btn-sm" th:href="@{index.html(l='en-US')}" rel="external nofollow" >中文</a>

* <a class="btn btn-sm" th:href="@{index.html(l='zh-CN')}" rel="external nofollow" >English</a>

*/

lci.setParamName("l");

return lci;

}

以上是 Spring Boot2.X国际化文件编写配置 的全部内容, 来源链接: utcz.com/z/349375.html

回到顶部