过滤器解决Servlet中文乱码
2014-08-15 11:55
281 查看
一、问题描述:Servlet接收来自JSP页面的中文参数时,在Servlet文件中编写输出语句,控制台输出中文乱码。
过滤器解决方法:(这个问题我前面的文章已近解决,只不过你每次都要在Servlet文件中添加代码,很是麻烦)
1.过滤器在此方法的作用:每当程序要运行Servlet文件之前,都要去执行过滤器文件;在过滤器文件中编写要在Servlet文件之前运行的代码。
2.实现过程:分为两步(1.编写过滤器类。2.编写配置文件)
1.过滤器类
(1).在src文件下建个包 filter
(2).在此包下新建类 ServletFilter
(3).代码:
package 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 ServletFilter implements Filter {
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain) throws ServletException, IOException {
System.out.println("我是第一个过滤器!可以解决Servlet中文乱码");
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=utf-8");
chain.doFilter(request,response); //访问下一个filter类,执行完所有的filter再去执行页面。
}
public void init(FilterConfig config) { }
public void destroy() {}
}
2.配置web.xml文件(/WebRoot/WEB-INF/web.xml)
<!-- 过滤器,将此代码放在</web-app>之上-->
<filter>
<filter-name>ServletFilter </filter-name>
<filter-class>filter.ServletFilter </filter-class>
</filter>
<filter-mapping>
<filter-name>ServletFilter </filter-name>
<servlet-name>*</servlet-name>
</filter-mapping> <!-- 这个过滤器可以过滤所有的文件-->
过滤器解决方法:(这个问题我前面的文章已近解决,只不过你每次都要在Servlet文件中添加代码,很是麻烦)
1.过滤器在此方法的作用:每当程序要运行Servlet文件之前,都要去执行过滤器文件;在过滤器文件中编写要在Servlet文件之前运行的代码。
2.实现过程:分为两步(1.编写过滤器类。2.编写配置文件)
1.过滤器类
(1).在src文件下建个包 filter
(2).在此包下新建类 ServletFilter
(3).代码:
package 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 ServletFilter implements Filter {
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain) throws ServletException, IOException {
System.out.println("我是第一个过滤器!可以解决Servlet中文乱码");
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=utf-8");
chain.doFilter(request,response); //访问下一个filter类,执行完所有的filter再去执行页面。
}
public void init(FilterConfig config) { }
public void destroy() {}
}
2.配置web.xml文件(/WebRoot/WEB-INF/web.xml)
<!-- 过滤器,将此代码放在</web-app>之上-->
<filter>
<filter-name>ServletFilter </filter-name>
<filter-class>filter.ServletFilter </filter-class>
</filter>
<filter-mapping>
<filter-name>ServletFilter </filter-name>
<servlet-name>*</servlet-name>
</filter-mapping> <!-- 这个过滤器可以过滤所有的文件-->
相关文章推荐
- [原]过滤器解决Servlet中文乱码
- Servlet中通过过滤器实现统一的手动编码(解决中文乱码)
- Servlet中通过过滤器实现统一的手动编码(解决中文乱码)
- 备忘录:用servlet过滤器解决JSP中文乱码
- Servlet中通过过滤器实现统一的手动编码(解决中文乱码)
- Servlet 中文乱码解决【使用过滤器】
- AJAX在servlet中返回中文乱码问题的解决
- Servlet 中文乱码解决
- Servlet 中文乱码解决
- 添加过滤器解决中文乱码问题!
- Tomcat中用Filter解决JSP提交中文信息到Servlet的乱码问题
- 中文乱码问题解决,过滤器配置,get post提交乱码,filter,struts乱码,jsp乱码
- Servlet 中文乱码解决
- 在控制器中添加过滤器,解决中文由jsp到action进而到数据库传输过程中出现的乱码问题(Struts)
- servlet在进行GET请求时中文乱码解决方法
- Tomcat中用Filter解决JSP提交中文信息到Servlet的乱码问题
- Servlet 中文乱码解决
- 使用Servlet过滤器-解决了中文问题
- JSP/Servlet页面中文显示为乱码的解决方式
- 过滤器解决中文乱码问题