jsf学习二(国际化)

 国际化(I18N)就是设计软件应用,在不改变它们程序逻辑的前提下支持各种语言和区域
本地化(L10N)就是设计软件应用支持特定地区
由于数据经过本地化,因此同一应用程序能在全世界使用
当增加一种新的语言时,应用不需要重新编译
在显示和文化相关的数据(例如日期或货币)时,格式应用遵循用户的语言和区域
文本内容(如状态消息和组件标签)不是硬编码到应用程序中,而通常是从文本文件中动态提取的

国际化的步骤

创建一个包含应用程序默认语言的键/值对的文件
 文件命名格式:
Filename_languagecode_CountryCode.properties
例如:
ApplicationResources_zh_CN.properties



JSF 提供 <f:loadBundle> 标签以加载资源包
此标签具有两个属性:basename 和 var
basename 指定要加载的 properties 文件的名称
var属性用来为该properties文件起一个别名





< f:view >
    
< f:loadBundle  basename ="csdnblog"  vars ="csdn"   />
….
    
< h:outputLabel  value ="#{csdn.first}"   />
</ f:view >


资源文件编译

native2ascii –encoding gb2312 messagesCN.properties  messages_zh_CN.properties




一个登陆实现国际化

后台检查登陆是否正确
   public  String Login(string userName,string passWord)  {
      
if ( UserName=="blog"{
          
return "success";
      }
 else {
     FacesContext context 
= FacesContext.getCurrentInstance();
     ResourceBundle bundle 
= ResourceBundle.getBundle("messages", context.getViewRoot().getLocale());
      String msg 
= "";
     
if ( username=="" || passWord=="")
         msg 
= bundle.getString("username_isnull");
  
    context.addMessage (
null, new FacesMessage(msg));
    
return "shibai"

 }

  }


前台
< f:loadBundle  basename ="csdnblog"  var ="csdn" />
< html >
 
< f:view >
     
< h:form >
      
< h:outputText  value ="#{csdn.login}" />   < br />
      
< h:messages  style ="color: blue" />< br />
      
< h:inputText  id ="username"  value ="#{UserBean.userName}"
                           required
="true" >
           
< f:validateLongRange  minimum ="0"  maximum ="20" />
      
</ h:inputText >< br />< br />


    
< h:outputText  value ="#{csdn.password}" />   < br />
      
< h:messages  style ="color: blue" />< br />
      
< h:inputText  id ="pssword"  value ="#{UserBean.passWord}"
                           required
="true" >
           
< f:validateLongRange  minimum ="0"  maximum ="16" />
      
</ h:inputText >< br />< br />


     
< h:commandButton  value ="#{csdn.button_title}"  
                                      action
="#{userBean.Login}" />
   
</ h:form >
 
</ f:view >
</ html >


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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值