博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring基本使用(消息源MessageSource的使用/国际化)
阅读量:4109 次
发布时间:2019-05-25

本文共 2151 字,大约阅读时间需要 7 分钟。

0. 使用 spring 提供的消息源,简单示例
  1. 资源包路径结构如下(项目结构)(资源包文件编码统一为 UTF-8 编码,这里仅仅使用 language-code 作为资源文件划分,即 文件名中的 zh 和 en)(资源包中,至少要提供 my_message_source.properties 这个基础版本的资源,当请求 en 或 zh 版本不存在时,会回退到这个基础版本的资源)
    项目结构图
    1.1 文件 my_message_source_zh.properties 和 my_message_source_en.properties 的内容分别为:
// zh版本(中文版) 文件的内容	application-name=应用名称	author=作者	version=版本	// en版本(英文版) 文件的内容	application-name=application name	author=author	version=version
  1. spring 配置文件中,定义消息源 bean 即 messageSource bean
my_message_source
UTF-8
  1. 简单测试
package com.willhonor.test.useMessageSource;import java.util.Locale;import org.junit.Test;import org.springframework.context.support.ClassPathXmlApplicationContext;public class Test_use_message_source_i18n {
@Test public void test_use_1() throws Exception {
String pathA = "com/willhonor/test/configs/application.j.xml"; String[] path = new String[] {
pathA}; ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(path); // ch String can = context.getMessage("application-name", new Object[] {
}, Locale.CHINESE); System.out.println(can); String ca = context.getMessage("author", new Object[] {
}, Locale.CHINESE); System.out.println(ca); String cv = context.getMessage("version", new Object[] {
}, Locale.CHINESE); System.out.println(cv); // en String ean = context.getMessage("application-name", new Object[] {
}, Locale.ENGLISH); System.out.println(ean); String ea = context.getMessage("author", new Object[] {
}, Locale.ENGLISH); System.out.println(ea); String ev = context.getMessage("version", new Object[] {
}, Locale.ENGLISH); System.out.println(ev); // context.close(); } @Test public void test_use_locale() throws Exception {
System.out.println(Locale.ENGLISH.getLanguage()); // en, language System.out.println(Locale.CHINESE.getLanguage()); // ch, language System.out.println(Locale.CHINA.getCountry()); // cn, country }}
  1. 测试执行结果如下(结果达到预期)
...# 省略 spring 日志打印...应用名称作者版本application nameauthorversion...# 省略 spring 日志打印...

转载地址:http://ljlsi.baihongyu.com/

你可能感兴趣的文章
Linux下Oracle数据库账户被锁:the account is locked问题的解决
查看>>
极客算法训练营学习笔记(一)
查看>>
记CSDN访问20万+
查看>>
Windows 环境下Webstorm 2020.3 版本在右下角找不到Git分支切换部件的一种解决方法
查看>>
Electron-Vue项目中遇到fs.rm is not a function问题的解决过程
查看>>
飞机换乘次数最少问题的两种解决方案
查看>>
有向无回路图的理解
查看>>
设计模式中英文汇总分类
查看>>
MFC实现五子棋游戏
查看>>
WPF实现蜘蛛纸牌游戏
查看>>
单例模式
查看>>
工厂方法模式
查看>>
模板方法模式
查看>>
数据结构之队列、栈
查看>>
数据结构之树
查看>>
数据结构之二叉树
查看>>
二叉树非递归遍历算法思悟
查看>>
红黑树算法思悟
查看>>
从山寨Spring中学习Spring IOC原理-自动装配注解
查看>>
实例区别BeanFactory和FactoryBean
查看>>