springboot整合i18n—通过请求头传递参数

springboot2.0可以自动化整合i18n

一、配置文件

需要在classpath:下放置国际化文件

  1. 默认文件:messages.properties(这里可以自定义语言,我们先自定义为中文)
user.name = 张三
  1. 英文文件:messages_en_US.properties
user.name = zhangsan
  1. 中文文件:messages_zh_CN.properties
user.name = 张三

二、配置国际化文件的路径

在application.yml文件中加入国际化文件到相对路径,多个文件以逗号隔开

springmessages:basename: i18n/messages

三、获取国际化文件的值

通过工具类 MessageUtils 获取国际化文件到中英文值

@Component
public class MessageUtils {private static MessageSource messageSource;public MessageUtils(MessageSource messageSource) {MessageUtils.messageSource = messageSource;}/*** 获取单个国际化翻译值*/public static String get(String msgKey) {try {return messageSource.getMessage(msgKey, null, LocaleContextHolder.getLocale());} catch (Exception e) {return msgKey;}}
}

四、controller代码

@RestController
@RequestMapping("/i18n")
public class I18nController {@GetMapping("/hello")public String hello() {String message = MessageUtils.get("user.name");System.out.println(message);return message;}
}

五、测试

用postman进行测试,在请求头中加上Accept-Language

springboot整合i18n相关推荐

  1. SpringBoot整合 ActiveMQ、SpringBoot整合RabbitMQ、SpringBoot整合Kafka

    1.概念:SpringBoot 整合消息服务2.具体内容对于异步消息组件在实际的应用之中会有两类:· JMS:代表作就是 ActiveMQ,但是其性能不高,因为其是用 java 程序实现的:· AMQ ...

  2. SpringBoot 整合Druid数据源SQL监控不显示问题

    SpringBoot 整合Druid数据源SQL监控不显示问题 项目场景: 问题描述: 解决方案: 项目场景: SpringBoot 整合Druid数据源SQL监控不显示 问题描述: 明明使用Drui ...

  3. SpringBoot整合Flink(施耐德PLC物联网信息采集)

    SpringBoot整合Flink(施耐德PLC物联网信息采集) Linux环境安装kafka 前情: 施耐德PLC设备(TM200C16R)设置好信息采集程序,连接局域网,SpringBoot订阅M ...

  4. SpringBoot第九篇: springboot整合Redis

    这篇文章主要介绍springboot整合redis,至于没有接触过redis的同学可以看下这篇文章:5分钟带你入门Redis. 引入依赖: 在pom文件中添加redis依赖: <dependen ...

  5. es springboot 不设置id_原创 | 一篇解决Springboot 整合 Elasticsearch

    ElasticSearch 结合业务的场景,在目前的商品体系需要构建搜索服务,主要是为了提供用户更丰富的检索场景以及高速,实时及性能稳定的搜索服务. ElasticSearch是一个基于Lucene的 ...

  6. springboot整合shiro使用shiro-spring-boot-web-starter

    此文章仅仅说明在springboot整合shiro时的一些坑,并不是教程 增加依赖 <!-- 集成shiro依赖 --> <dependency><groupId> ...

  7. db2 springboot 整合_springboot的yml配置文件通过db2的方式整合mysql的教程

    springboot整合MySQL很简单,多数据源就master,slave就行了,但是在整合DB2就需要另起一行,以下是同一个yml文件 先配置MySQL,代码如下 spring: datasour ...

  8. 九、springboot整合rabbitMQ

    springboot整合rabbitMQ 简介 rabbitMQ是部署最广泛的开源消息代理. rabbitMQ轻量级,易于在内部和云中部署. 它支持多种消息传递协议. RabbitMQ可以部署在分布式 ...

  9. 八、springboot整合Spring Security

    springboot整合Spring Security 简介 Spring Security是一个功能强大且可高度自定义的身份验证和访问控制框架.它是保护基于Spring的应用程序的事实标准. Spr ...

最新文章

  1. 支持向量机(SVM)算法
  2. 【MongoDB数据库】怎样安装、配置MongoDB
  3. 开通域名绑定DDNS
  4. 常见工具:dp与px互转,屏幕宽度与高度获取
  5. 外设驱动库开发笔记15:DHT11温湿度传感器驱动
  6. Linux操作系统下进程讲解(史上最强总结)
  7. 数据库索引的使用及优化
  8. Aliware研究开篇
  9. 一个具有对象计数功能的基类
  10. jstl标签库基础教程及其使用代码
  11. 常见For 循环优化方式总结——提高效率小妙招
  12. 中央空调和普通空调区别
  13. Model-Free Adaptive Predictive Control
  14. 程序人生之项目团队那些人与事(1)
  15. 市场调研报告-全球与中国云产品生命周期管理(PLM)软件市场现状及未来发展趋势
  16. 理解virt res shr之间的关系 - linux
  17. N 个Android 视频教程免费下载
  18. Rosalind: DNA核苷酸计数和DNA翻译成RNA
  19. 全球及中国泵真空系统行业发展战略与十四五布局规划报告2022版
  20. nb_samples(采样数)转换

热门文章

  1. Telink之标准SDK的介绍_1
  2. html金山打字源码,c#实现简单金山打字小游戏(源码)
  3. html图片浮动教程,CSS Float(浮动)
  4. 基于数字孪生技术浅谈智慧园区的构建及其发展
  5. 洛谷B2015计算并联电阻的阻值
  6. BookshelfB
  7. OneDrive操作指南
  8. 【自签名证书私有CA签名证书】
  9. 生物制药计算机和系统管理体系,制药企业计算机系统验证管理改进研究.pdf
  10. android 打卡 虚拟定位 sqlite