SpringBoot实现国际化

实现方法:thymeleaf模板引擎加上BootStrap

准备工作:

1.将准备好的Bootstrap模板放在templates下让SpringBoot进行自动配置

SpringBoot实现国际化_第1张图片

SpringBoot自动配置会自动到(idea的shif键连按两下进入全局搜索)

SpringBoot实现国际化_第2张图片

 

 

 2.Bootstrp的引入(这里是maven以depency的方式引入)


        <dependency>
            <groupId>org.webjarsgroupId>
            <artifactId>bootstrapartifactId>
            <version>4.0.0version>
        dependency>

3.thymeleaf的引入

        <dependency>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-starter-thymeleafartifactId>
        dependency>

4.编写国际化配置文件

使用ResourceBundleMessageSource管理国际化资源文件

SpringBoot实现国际化_第3张图片

 

 SpringBoot实现国际化_第4张图片

 

 springBoot默认配置

SpringBoot实现国际化_第5张图片

 相关配置的application.properties:

SpringBoot实现国际化_第6张图片

 

 

 自己配置的国际化的代码:

package com.zyb.webdemo.component;

import org.springframework.web.servlet.LocaleResolver;
import org.thymeleaf.util.StringUtils;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Locale;

/**
 * 在链接上携带区域信息
 */

public class MyLocaleResolver implements LocaleResolver {

    @Override
    public Locale resolveLocale(HttpServletRequest request) {
        String l = request.getParameter("l");
        Locale locale = Locale.getDefault();
        if(!StringUtils.isEmpty(l)){
            String[] split = l.split("_");
            locale = new Locale(split[0],split[1]);
        }
        return locale;
    }

    @Override
    public void setLocale(HttpServletRequest request, HttpServletResponse response, Locale locale) {

    }
}

上面附带链接

SpringBoot实现国际化_第7张图片

 

 

 结果乱码的解决方案;

SpringBoot实现国际化_第8张图片

 

 

 效果图:

 

SpringBoot实现国际化_第9张图片

 

 

SpringBoot实现国际化_第10张图片

你可能感兴趣的:(SpringBoot实现国际化)