1)採用國際化。這樣能解決頁面的中文亂碼問題。
a)把頁面中所出現的中文寫到屬性文件中,例如:messages_zh.properties,
html
shipment.system = 出貨小系統 java
shipment.jsnum = 條碼 web
shipment.stylenum = 款式 tomcat
<%@ page pageEncoding="utf-8"contentType="text/html;charset=utf-8" %>app
<metahttp-equiv="Content-Type"content="text/html; charset=utf-8">jsp
<!-- Define the basename for a resource bundle for I18N -->ide
<context-param>oop
<param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name>測試
<param-value>messages</param-value>ui
</context-param>
<!-- 採用filter編碼轉換-->
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>org.appfuse.web.SetCharacterEncodingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
package org.appfuse.web;
/**
* Created by IntelliJ IDEA.
* User: Administrator
* Date: 2005-8-11
* Time: 13:17:00
* To change this template use File | Settings | File Templates.
*/
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
publicclass SetCharacterEncodingFilter implements Filter{
publicvoid init(FilterConfig arg0) throws ServletException {
}
publicvoid doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
/*
* Servlet編碼
*/
request.setCharacterEncoding("utf-8");
chain.doFilter(request,response);
}
publicvoid destroy() {
}
}
webwork.custom.i18n.resources=messages
webwork.locale=zh_CN
webwork.i18n.encoding=GBK
<%@ taglib uri="http://java.sun.com/jstl/fmt_rt"prefix="fmt" %><spanstyle="font-family: Arial, Helvetica, sans-serif;"></span>
<fmt:messagekey="shipment.shipment"/>
<Connector
port="8080"maxThreads="150"minSpareThreads="25"maxSpareThreads="75"
enableLookups="false"redirectPort="8443"acceptCount="100"
debug="0"connectionTimeout="20000"
disableUploadTimeout="true"URIEncoding="GBK"/>