Springboot 国际化通过Header中Accept-Language的值切换语言实战与AcceptHeaderLocaleResolver源码解析

本文介绍了如何在SpringBoot项目中实现国际化功能,通过Accept-Language头进行语言切换,包括配置文件、LocaleResolver和MessageSource的使用,以及对AcceptHeaderLocaleResolver源码的深入解析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Springboot 国际化通过Header中Accept-Language的值切换语言实战与源码解析

前言

接到将系统进行国际化改造的需求,简单理解就是系统要跟随浏览器进行中英文语言切换,但由于老系统返回的数据有些是用中文的,导致还需要把所有中文改成英文字段,然后再配置中英文配置文件进行映射(不管在什么场景下,请不要用中文或者拼音,太难搞了)

实战操作

一、添加配置文件

1、在resource文件夹下新建 i18n 文件夹

2、新建 Resource Bundle 资源文件,包括中英文的配置文件

在这里插入图片描述

3、配置 i18n

新增一个配置类,只需要在这个配置类中,注入这个bean,LocaleResolver即可

这里选用的是 AcceptHeaderLocaleResolver()这个类,目的是使用请求头中的Accept-Language的属性进行语言切换

@Bean  
public LocaleResolver localeResolver() {
     
 AcceptHeaderLocaleResolver slr = new AcceptHeaderLocaleResolver();  
 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值