Spring Boot2.X国际化文件编写配置
这篇文章主要介绍了Spring Boot2.X国际化文件编写配置,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
国际化文件的编写
messages.properties init projectmessages_en_US.properties init projectmessages_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/** * 配置国际化 */@Beanpublic 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 th:href='https://www.haobala.com/bcjs/@{index.html(l=’en-US’)}' rel='external nofollow' >中文</a> * <a th:href='https://www.haobala.com/bcjs/@{index.html(l=’zh-CN’)}' rel='external nofollow' >English</a> */ lci.setParamName('l'); return lci; }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持好吧啦网。
相关文章: