国家化问题,就是我们在页面中,系统可以支持多种语言。

直接上步骤了啊

1.创建配置类

package com.zzy.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.support.ResourceBundleMessageSource;

@Configuration
public class I18NConfig {

    @Bean
    public ResourceBundleMessageSource messageSource() {
        
        //创建资源绑定信息源
        ResourceBundleMessageSource messageSource = new ResourceBundleMessageSource();
        //设置可以使用编码访问 
        messageSource.setUseCodeAsDefaultMessage(true);
        //禁用系统本地环境
        messageSource.setFallbackToSystemLocale(false);
        //设置资源文件的前缀
        messageSource.setBasename("student");
        //设置编码
        messageSource.setDefaultEncoding("UTF-8");
        //设置缓存时间
        messageSource.setCacheMillis(2);
        
        return messageSource;
    }
}


2.创建配置文件,这里面呢,我就写了3个

04-springboot解决国际化问题

1)简体中文配置文件 student_en.properties 

student.id = 中文1
student.name = 中文2
student.age = 中文3
student.sex = 中文4
student.birth = 中文5
student.phone =中文6

2)默认配置文件 student.properties

student.id = 1
student.name = xiaoming
student.age = 29
student.sex = 1
student.birth = 2018-12-12
student.phone = 18201455505


3)英文配置文件 student_en.properties

student.id = english1
student.name = english12
student.age = english3
student.sex = english4
student.birth = english5
student.phone = english6

页面读取配置文件内容hello.html

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<span th:text="#{student.id}"></span>
<span th:text="#{student.name}"></span>
<span th:text="#{student.age}"></span>
<span th:text="#{student.sex}"></span>
<span th:text="#{student.birth}"></span>
<span th:text="#{student.phone}"></span>
</body>
</html>

到这里,就完成了,我们来测试一下

我用的是谷歌游览器,游览器里面是可以自动切换语言的

1.英文测试--》切换到英文的状态

设置--》语言--》将英文置顶

04-springboot解决国际化问题

访问结果

04-springboot解决国际化问题

2.中文测试,简体中文置顶

04-springboot解决国际化问题

刷新页面

04-springboot解决国际化问题

3)默认测试 ---》阿尔巴尼亚语置顶

 

04-springboot解决国际化问题

刷新页面

04-springboot解决国际化问题

提示:1)国际化,其实本质就是读取不同的配置文件,而这些配置文件的命名方式,都已经按照一定规范命名好。

           2)配置文件的名字要和配置类中的名字一致(我已经用红色标记)

           3)如果没有这个这种语言的配置文件,会选择默认的,也就是student.properties

 

相关文章:

  • 2021-08-27
  • 2021-11-02
  • 2022-12-23
  • 2021-11-19
  • 2021-06-09
猜你喜欢
  • 2021-08-03
  • 2021-05-17
  • 2022-12-23
  • 2022-02-21
  • 2021-06-13
  • 2022-12-23
  • 2022-02-17
相关资源
相似解决方案