struts开发中的中文乱码问题
2010-03-09 17:14
113 查看
整体思想,编码方法统一(utf-8)
一:页面显示中文乱码问题:
解决:<%@ page language="java" pageEncoding="UTF-8" %>
二:传递参数中文乱码问题:
解决:1. 在tomcat中修改server.xml文件。
在本机上 D:\Tomcat5.5\conf目录下找到server.xml文件,在文件的<Connector>标签中加上红色部分
<Connector port="8888" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8"/>
第一步主要是为了防止在get请求时传递参数为中文如:http://localhost:8888/login?username=小王
2. 编写过滤器(Filter);
<1>先编写CharactorEncodingFilter.java类,这个类要实现 servlet 的 Filter 接口
具体内容如下:
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;
public class CharactorEncodingFilter implements Filter {
private String encoding = "ISO8859-1";
private FilterConfig config;
public void init(FilterConfig config) throws ServletException {
this.config = config;
String code = config.getInitParameter("encoding");
if (code != null) {
encoding = code;
}
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding(encoding);
chain.doFilter(request, response);
}
public void destroy() {
config = null;
}
}
<2> 要在web.xml文件中,配置filter
具体内容如下:
<filter>
<filter-name>charactorEncodingFilter</filter-name>
<filter-class>
com.oakpip.struts.filter.CharactorEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>charactorEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
三:国际化中文乱码问题:
解决:用JDK的native2ascii工具对资源文件进行转换
一:页面显示中文乱码问题:
解决:<%@ page language="java" pageEncoding="UTF-8" %>
二:传递参数中文乱码问题:
解决:1. 在tomcat中修改server.xml文件。
在本机上 D:\Tomcat5.5\conf目录下找到server.xml文件,在文件的<Connector>标签中加上红色部分
<Connector port="8888" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8"/>
第一步主要是为了防止在get请求时传递参数为中文如:http://localhost:8888/login?username=小王
2. 编写过滤器(Filter);
<1>先编写CharactorEncodingFilter.java类,这个类要实现 servlet 的 Filter 接口
具体内容如下:
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;
public class CharactorEncodingFilter implements Filter {
private String encoding = "ISO8859-1";
private FilterConfig config;
public void init(FilterConfig config) throws ServletException {
this.config = config;
String code = config.getInitParameter("encoding");
if (code != null) {
encoding = code;
}
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding(encoding);
chain.doFilter(request, response);
}
public void destroy() {
config = null;
}
}
<2> 要在web.xml文件中,配置filter
具体内容如下:
<filter>
<filter-name>charactorEncodingFilter</filter-name>
<filter-class>
com.oakpip.struts.filter.CharactorEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>charactorEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
三:国际化中文乱码问题:
解决:用JDK的native2ascii工具对资源文件进行转换
相关文章推荐
- 处理struts开发中的中文乱码问题
- 使用Struts进行JavaWeb开发的中文乱码问题解决方案
- struts开发中文乱码问题总结
- Struts中文乱码问题解决
- [-好贴转载-] Jsp/struts/tapestry/hibernate等中文乱码问题解决
- 解决Struts中文乱码问题
- struts中文乱码问题
- java web开发时表单提交引起的一些中文乱码问题
- ndk开发过程中中文乱码问题的解决方案
- Struts1小案例问题教训总结(含中文乱码问题及解决)
- struts 中文乱码问题
- Java开发,表单提交中发生中文乱码的问题。
- 有关struts.xml的地址和中文编码乱码问题
- 01--Java开发中文乱码问题分析
- Struts2.1.6中文乱码问题
- struts中文乱码问题解决
- struts中文乱码问题
- 接口测试框架开发(二):extentreports报告中文乱码问题
- 基于Tomcat的JSP开发过程中的中文乱码问题解决
- 使用JSP开发应用程序时的编码(中文等乱码)问题的建议解决方案(包括接受request和数据库操作)