jsp页面中出现的java代码之国际化

项目是struts1的,一个老项目的代码,要做一个演示项目,就拿来用用,其中需要国际化,用struts1自带的国际化策略对页面上的网页元素解决掉了。但是因为项目比较紧,所以很多新增加的功能都加在了jsp页面上,于是jsp页面就出现了若干的<%...%>。其中的Java代码无法利用struts1提供的机制去国际化。

所以有了下面的类:

/**
*对jsp页面中出现的java代码中的汉字进行国际化
*/
package com.platform.I18N;
import java.util.MissingResourceException;
import java.util.ResourceBundle;
import javax.servlet.http.HttpServletRequest;
import com.platform.common.PropertiesHelper;

public class MessageResource {
	public static String getString(HttpServletRequest request, String file, String key){
		String ret = "";
		String prefix = "";
		//得到浏览器当前的语言 至于为什么后面会有个substring,有兴趣的可以试试
		String language = (String)request.getHeader("accept-language").substring(0,2);
		//读取配置文件,
		PropertiesHelper helper = new PropertiesHelper();
		String resourceName = helper.getPropertise4FileNodename("MessageResource.properties", file);
		//下面的代码要求配置文件表明了对国际化配置文件的格式要求
		if ("zh".equals(language)){
			prefix = "_zh_CN";
		}else if ("en".equals(language)){
			prefix = "_en_US";
		}
		//读取配置文件中的键值对
		ResourceBundle Resource_Bundle = ResourceBundle.getBundle(resourceName+prefix);
		try{
			ret = Resource_Bundle.getString(key);
		}catch(MissingResourceException e){
			e.printStackTrace();
		}
		return ret;
	}
}

  代码中注释已经很清楚。。。过段时间来,祈祷还能看懂。。。

小菜社区:http://www.itcaicai.com

转载于:https://www.cnblogs.com/hanbin/archive/2011/09/22/2185301.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值