Struts 국제 화 처리 의 사고방식
、Struts
Struts MVC Web Framework。 struts 。 , Struts 。Web 3 。 、jsp / ; 、 ; 、DB 。 jsp / 。
、
Struts jsp ( , ) , 。 , :1、 web.xml ActionServlet ;2、 ;3、 JSP ;4、 JSP 。
1、 web.xml ActionServlet
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>application</param-name>
<param-value>ApplicationResources</param-value> <!-- -->
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
2、
/WEB-INF/classes UTF-8 。 “ - ” 。 JSP 。 ApplicationResources, ( e , , )
ApplicationResources.properties : 。 , 。
ApplicationResources_zh_CN.properties: 。
ApplicationResources_zh_TW.properties: 。
: _ _ .properties。 %JAVA_HONE%/BIN/native2ascii.exe 。 (http://java.sun.com/products/jilkit/ Internationalization Java Internationalization and Localization Toolkit )。 , %JAVA_HONE%/BIN/native2ascii.exe 。
2.1
//ApplicationResources.properties ; , 。
label.username=USERNAME :
label.password=PASSWORD :
//ApplicationResources_zh_CN.bak ; 。 。 UTF-8
label.username= :
label.password= :
//ApplicationResources_zh_TW.bak : 。 。 UTF-8, 。
label.username=ノめ?W :
label.password=ノめ?W :
2.2 , UTF-8
native2ascii -encoding gb2312 ApplicationResources_zh_CN.bak ApplicationResources_zh_CN.properties
native2ascii -encoding big5 Applica tionResources_zh_TW.bak ApplicationResources_zh_TW.properties
3、 JSP
JSP UTF-8。 JSP , ( , , )
<%@ page contentType="text/html;charset=UTF-8"%>
4、 JSP 。
JSP <bean:message />strus bean tag message 。
<table>
<tr>
<td align="right"><bean:message key="label.username" /></td>
</tr>
<tr>
<td align="right"><bean:message key="label.password" /></td>
</tr>
</table>
, , IE zh_CN ,
:
:
IE zh_TW ,
:
:
IE ->Internet -> , , IE 。
、 。
, Filter 。 , 。 web.xml Filter。 。
3.1 Filter。 。
package com.webapps.commons;
import java.io.*;
import javax.servlet.*;
public class CharsetEncodingFilter implements Filter{
private FilterConfig config = null;
private String defaultEncode = "UTF-8";
public void init(FilterConfig config) throws ServletException {
this.config = config;
if(config.getInitParameter("Charset")!=null){
defaultEncode=config.getInitParameter("Charset");
}
}
public void destroy() {
this.config = null;
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
ServletRequest srequest=request;
srequest.setCharacterEncoding(defaultEncode);
chain.doFilter(srequest,response);
}
}
3.2 web.xml Filter
<filter>
<filter-name>Character Encoding</filter-name>
<filter-class>com.webapps.commons.CharsetEncodingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
、
, DB 。
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JSP| EL (Experession Language)텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.