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

作者:---WeiGeH 时间:2023-02-24 11:34:24 

这篇文章主要介绍了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;
 }

来源:https://www.cnblogs.com/dgwblog/p/11963492.html

标签:Spring,Boot,国际,化
0
投稿

猜你喜欢

  • 如何使用try-with-resource机制关闭连接

    2022-04-25 01:36:54
  • SpringBoot Mybatis Plus公共字段自动填充功能

    2022-09-01 12:22:33
  • java 实现websocket的两种方式实例详解

    2023-01-22 04:41:32
  • JDK1.8安装与配置超详细教程

    2023-09-20 16:17:50
  • Java 1.0和Java 1.1 的IO类的比较

    2023-10-07 10:48:39
  • Android编程滑动效果之Gallery仿图像集浏览实现方法

    2022-11-19 15:21:58
  • 浅谈@Value和@Bean的执行顺序问题

    2023-02-25 18:30:24
  • 一篇文章带你复习java知识点

    2023-01-15 09:39:38
  • IntelliJ IDEA 2021.1 推出语音、视频功能,边写代码边聊天(功能超级强大)

    2023-09-13 23:30:37
  • 如何利用Java AWT 创建一个简易计算器

    2023-04-22 03:04:08
  • 深入XPath的详解以及Java示例代码分析

    2021-11-01 13:42:33
  • Java实现贪吃蛇游戏(1小时学会)

    2023-06-29 00:54:02
  • java中replaceAll替换圆括号实例代码

    2023-09-30 16:29:54
  • SpringBoot基于Swagger2构建API文档过程解析

    2022-12-06 20:42:58
  • C#显示文件夹下所有图片文件的方法

    2021-11-25 23:50:10
  • SpringMVC RESTFul实战案例访问首页

    2022-03-12 00:21:01
  • 员工管理系统java版

    2022-05-04 23:33:18
  • java子类调用父类的方法中包含子类重写的实例方法

    2023-12-22 21:14:50
  • 解决Android popupWindow设置背景透明度无效的问题

    2022-12-05 10:39:42
  • Java面向对象基础知识之委托和lambda

    2022-07-28 16:51:11
  • asp之家 软件编程 m.aspxhome.com