栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

SpringBoot实现国际化

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringBoot实现国际化

一、国际化

        1.就是根据不同的浏览器语言,加载不同的配置文件

        2.springboot默认就支持国际化

        3.只需要在resources/目录下创建国际化配置文件即可,名称以messages开始

二、实现国际化(i18n:internationalization)

        1.引入依赖

    
            org.springframework.boot   
            spring-boot-configuration-processor
            
            true
        

        2.创建resources目录下的国际化配置文件

                messages.properties(默认)

                messages_zh_CH.properties(中文)

                messages_en_US.properties(英文)

        3.application.yml中配置

        

spring:
  messages:
    basename: i18n/messages
    encoding: UTF-8

        4.借助freemarker实现国际化

                4.1.在html头部加入<#import "spring.ftl" as s>

                4.2.使用<@s.message code="welcome" />即可

        5.添加拦截器,根据我们选择的语言进行切换

                5.1. I18nLocaleConfig.java

I18nLocaleConfig.java代码如下,直接CV大法即可

@Configuration
public class I18nlocaleConfig {
    @Bean
    public LocaleResolver localeResolver(){
        SessionLocaleResolver resolver = new SessionLocaleResolver();
        resolver.setDefaultLocale(Locale.SIMPLIFIED_CHINESE);
        return resolver;
    }
    //拦截器,请求参数为lang
    @Bean
    public WebMvcConfigurer localeInterceptor(){
        return new WebMvcConfigurer() {
            @Override
            public void addInterceptors(InterceptorRegistry registry) {
                LocaleChangeInterceptor interceptor  = new LocaleChangeInterceptor();
                interceptor.setParamName("lang");
                registry.addInterceptor(interceptor);
            }
        };
    }

}

一切准备就绪,我们开始测试:

 运行结果:

发现我这里的中文乱码了,百度了好长时间也没找到解决方法。哪位大佬儿能帮我看看解决一下 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/630835.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号