struts--国际化


Java   ----国际化

MessageResource文件位置在src下,切记

MessageResource的格式 MessageResource_zh_CN.properties

                      MessageResource_en_US.properties


//其实不想上面定义也是可以的,主要还是看你的配置文件中怎么配置


public static void main(String[] args) {

// Locale locale= Locale.getDefault();

// System.out.println(locale.getCountry());

       ResourceBundle rb = ResourceBundle.getBundle("MessageResource");

       MessageFormat formant = new MessageFormat("MessageResource");

      String  na = formant.format(rb.getString("k1"), "anping");

       System.out.println(na);

}

Structs --国际化

像java那样写好messageResource之后一定要在配置文件中加入

 <message-resources parameter="MessageResource" />

用来寻找需要的MessageResource

根据判断我们可以修改:Locale

package com.anping.action;


import java.util.Locale;


import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;


import org.apache.struts.Globals;

import org.apache.struts.action.Action;

import org.apache.struts.action.ActionForm;

import org.apache.struts.action.ActionForward;

import org.apache.struts.action.ActionMapping;


public class ChangeLanAction extends Action {


@Override

public ActionForward execute(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response)

throws Exception {

String language= request.getParameter("lan");


if("CN".equals(language)){

//request.getSession().setAttribute("Globals.LOCALE_KEY", new Locale("zh","CN"));

this.setLocale(request, new Locale("zh","CN"));

}else if("US".equals(language)){


this.setLocale(request, new Locale("en","US"));


}

return mapping.findForward("ok");

}


}

request.getSession().setAttribute("Globals.LOCALE_KEY", new Locale("zh","CN"));
代替红色部分该 Local 令为


保存在sessin中


转载于:https://my.oschina.net/u/858119/blog/86882

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值