框架
面向請求驅動:
struts1.x,struts2.x,WebWork
面向事件驅動的(JSF)
--------------------------------------
struts空字段測試
<input type="text" name="username"\>
ActionForm中有:
private String username;
private String password;
頁面取得值:
<%=form.getUserName()%>//結果:
<%=form.getPassWord()%>//結果:null
${requestScope.userActionForm.username}//結果:
${requestScope.userActionForm.password}//結果:
----------------------------------------------------
java國際化
1 了解缺省Locale是由操作系統決定的,Locale是由語言和國家代碼組成
2 國際化資源文件是由baseName+locale組成,一般在src目錄下就可以了,如:MessageBundle_en_US.properties
baseName是任意合法的文件名
3 native2ascii命令的位置和用法
* 位置:java_home/bin
* 使用native2ascii.exe o.properties MessagesBundle_zh_CN.properties
* DOS
D:\>native2ascii -encoding gb2312 aaa.txt bbb.txt
------------------------------------------------------------------
struts國際化
1 在struts-config.xml文件中加入:<message-resources parameter="MessageResources"/>
注意:文件默認放在根src下,如入在其他目錄下.
如:res目錄下用"."連接<message-resources parameter="res.MessageResources"/>
2 提供不同版本的國際化文件,中文需要采用native2ascii轉換成unicode
MessageResources_en_US.properties文件
user.login.success={0},Login Success
user.title=User Login
user.name=User Name
user.password=Password
user.button.login=Login
MessageResources_zh_CN.properties文件
user.login.success={0},\u767b\u5f55\u6210\u529f
user.title=\u7528\u6237\u767b\u5f55
user.name=\u7528\u6237\
user.password=\u5bc6\u7801
user.button.login=\u767b\u5f55
3 在jsp中采用<bean:message>標簽讀取國際化文本
<titel><bean:message key="user.title"/></title>
<bean:message key="user.name"/>:<input type="text" name="username"/>
<bean:message key="user.password"/>:<input type="password" name="password"/>
<input type="submit" value="<bean:message key="user.name"/>"/>
4 動態設置locale
Locale currentLocale=Locale.getDefalut();得到Locale
currentLocale=new Loale("zh","CN");//建立Locale
currentLocale=new Loale("en","US");//建立Locale
request.getSession().setAttribute(Globals.LOCALE_KEY,currentLocale);
this.setLocale(request,currentLocale);//效果同上
5 動態設置message
* 創建messages集合
ActionMessages messages=new ActionMessages();
* 創建國際化消息文本
public ActionMessage(String key,Object value)
ActionMessage message=new ActionMessage("user.login.success",username);//只不清一個參數
//ActionMessage message=new ActionMessage("user.login.success",new Object[]{username});//多個參數
messages.add("loginSuccess1",message);
* 傳遞國際化消息文本
this.saveMessages(request,messages);
錯誤信息傳遞使用:this.saveErrors(request,messages);
* 頁面輸出
通過<html:message>標簽顯示消息(可以顯示普通消息和錯誤消息)
通過<html:errors>標簽顯示消息(只能顯示錯誤消息)
<html:messages id="msg" message="true">//html:messages標記與ActionMessages messages集合對應
<bean:write name="msg"/>
<html:messages>
<html:messages id="msg" message="true" property="loginSuccess1">
<bean:write name="msg"/>
<html:messages>
-------------------------------------------------------------------
JSTL國際化
<fmt:setLocale vlaue="${header['accept-language']}"/>設置locale
<fmt:setBundle basename="res.MessageResources"/>//設置資源文件
<fmt:message key="user.username"/>
---------------------------------------------------------------------
struts的路徑與模式匹配
posted on 2009-11-30 08:16
junly 閱讀(352)
評論(0) 編輯 收藏 所屬分類:
struts2/struts1.3/JSF