`
- 浏览:
268217 次
- 性别:
- 来自:
深圳
-
经Struts处理的.do请求都会有中文乱码的问题
1.写过滤器MyFilter
package com.zhao.struts;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import javax.servlet.Filter; //实现了这个接口就是过滤器
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
public class MyFilter implements Filter {
private FilterConfig config;
private String charset;
private boolean isEncode;
public void destroy() {
// TODO Auto-generated method stub
config = null;
charset = null;
isEncode = false;
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
// TODO Auto-generated method stub
try {
((HttpServletRequest) request).setCharacterEncoding(charset);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
try {
chain.doFilter(request, response);
} catch (ServletException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public void init(FilterConfig config) throws ServletException {
// TODO Auto-generated method stub
this.config = config;
charset = config.getInitParameter("char");
if (config.getInitParameter("encode").equalsIgnoreCase("true")) {
isEncode = true;
}
}
}
2. 配置web.xml //不是Struts框器也可配置过滤器的,是jsp+servlet也可以
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<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>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<filter> <!--过滤器配置-->
<filter-name>myFilter</filter-name>
<filter-class>com.zhao.struts.MyFilter</filter-class>
<init-param>
<param-name>char</param-name>
<param-value>utf-8</param-value>
</init-param>
<init-param>
<param-name>encode</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>myFilter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
</web-app>
3.重新装载项目,动了web.xml文件的都要重新装载才能更新
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
struts中文乱码问题解决详细步骤(两种方法)
eclipse struts 中文乱码问题图解 页面乱码 参数乱码 国际化乱码
struts 中文乱码问题解决
解决myeclipse Struts中文乱码问题视频
struts处理中文乱码问题总结struts处理中文乱码问题总结struts处理中文乱码问题总结struts处理中文乱码问题总结
Struts中文乱码解决方案
struts下的汉字乱码问题 经过测试
struts的中文乱码问题。。我想这对大多数朋友会有用的
关于StrutsPrepareAndExecuteFilter最新的过滤器,在Struts.xml定义常量<constant name="struts.i18n.encoding" value="UTF-8"/>无法解决post方式提交中文乱码问题。 关于Struts2各个版本、各种过滤器,用get方式...
struts1.2 解决中文乱码(Java技术)
解决SSH中的struts2的中文乱码问题,里面暂且介绍了3种,其他的希望有人能提出来,让大家共享...
在进行web应用程序开发的过程中,中文问题经常困扰着很多程序员。因此,在接下来的两个课程的学习中,我将根据实践经验来谈一下web应用中的中文问题的解决方法。让大家不再为此而头痛。
struts2中存在中文乱码的问题解决方 中文乱码,首先要区分是页面乱码、action乱码,还是数据库乱码。 大致的原理是java使用unicode编码-->window使用gbk(gb2312的扩展集)--mysql默认使用utf-8(unicode的一种编码...
奇怪的struts2的中文乱码问题及解决.docx
解决中文乱码的问题
这是一个中文转化为相应的编码格式,在web页面里能够正常显示中文。
解决Struts2.0中文乱码详细方法。
在web开发的时候,经常会出现中文乱码,你首先看看,你的乱码问题是处在数据库方面呢? 还是代码中,这里的解决是代码中的乱码,里面有两种方法可以解决