利用Filter技术解决中文乱码的简单实现

web.xml的配置

<filter>
        <filter-name>FilterTest01</filter-name>
        <filter-class>com.baowei.fiiter.FilterTest01</filter-class>
        <init-param>
            <param-name>charset</param-name>
            <param-value>utf-8</param-value>
        </init-param>
    </filter>

    <filter-mapping>
        <filter-name>FilterTest01</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

Filter的实现

public class FilterTest01 implements Filter {

    private FilterConfig config = null;
    private String defaultCharSet = "utf-8";

    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
        config = filterConfig;
    }

    @Override
    public void doFilter(ServletRequest request, ServletResponse response,
            FilterChain chain) throws IOException, ServletException {

        String charset = config.getInitParameter("charset");
        if (charset == null) {
            charset = defaultCharSet;
        }

HttpServletRequest req = (HttpServletRequest) request;
          HttpServletResponse resp = (HttpServletResponse) response;


req.setCharacterEncoding(charset);
          resp.setCharacterEncoding(charset);
          resp.setContentType("text/html;charset=" + charset);

    }

    @Override
    public void destroy() {

    }

}
时间: 2024-10-30 15:31:39

利用Filter技术解决中文乱码的简单实现的相关文章

利用Filter技术解决中文乱码的终极实现

利用包装类,解决乱码问题 web.xml的配置 <filter> <filter-name>CharacterEncodingFilter2</filter-name> <filter-class>cn.itcast.web.filter.example.CharacterEncodingFilter2</filter-class> </filter> <filter-mapping> <filter-name>

Javaweb 使用Servlet技术改写用户登录 使用Filter技术解决中文乱码

先把实验3的jsp页面复制过来: WebContent->WEB-INF->lib下面的jar包8.0版本也要记得复制: Java Resources->src下的 cn.edu.henu.bean(User.java 用户数据库操作)和cn.edu.henu.util(DBConnection.java 数据库的连接操作)这两个包 <?xml version="1.0" encoding="UTF-8"?> <web-app x

Struts用Filter过滤器解决中文乱码

(1)首先看一下项目的结构:(就是com.lc.filter下的MyFilter.java) (2)其中MyFilter.java的代码如下: package com.lc.filter; //ctrl+shift+o 导入各种包 即可 /** * 过滤器的使用方法 * 在创建类的时候 要用到接口Filter * 要自己在web.xml文件中配置过滤器 * @author xuliugen * */ public class MyFilter extends HttpServlet implem

Web---演示servlet技术(servlet生命周期),解决中文乱码问题

本节讲解决中文乱码问题的4种方法. 还有更好的方法,也就是用过滤器,这里就不演示了,博主目前也不会~呼?(^?^*)~过段时间才会学. servlet生命周期演示: index.jsp: <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Tra

javaEE:day2-servlet生命周期、提交解决中文乱码、tomcat加载jar包或类文件的顺序

servlet生命周期 生命周期简介: servlet在服务器第一次被请求的时候new出来,并初始化(即init())再调用service方法.这个实在服务器中new出来,然后用HashMap加的,与客户端无关.客户端之后访问只调用这个servlet的service方法. 具体分为4步: 1 构造方法 :服务器在被客户端第一次请求的时候运行 仅在服务器中运行一次 2 init方法:客户端第一次访问服务器的时候在服务器中进行初始化 仅一次.并且可以通过config参数在 web.xml中通过(ke

通俗易懂地解决中文乱码问题(1) --- 跨平台乱码

原文:[原创]通俗易懂地解决中文乱码问题(1) --- 跨平台乱码 本来是只打算写一篇关于中文乱码的blog的,但是发现要讲的东西跨度有点大,不好写到同一篇里面,所以分开了. 另一篇是  <[原创]通俗易懂地解决中文乱码问题(2) --- 分析解决Mysql插入移动端表情符报错 ‘incorrect string value: '\xF0...> . 这一篇重点在编码的理论,另一篇重点在解决问题及思路. 一.问题的开始 中文乱码问题经常出现在实际工程中,尤其容易发生在经验不足的团队对问题预估不

[转]Filter实现处理中文乱码,转义html标签,过滤敏感词

原文地址:http://www.cnblogs.com/xdp-gacl/p/3952405.html 在filter中可以得到代表用户请求和响应的request.response对象,因此在编程中可以使用Decorator(装饰器)模式对request.response对象进行包装,再把包装对象传给目标资源,从而实现一些特殊需求. 一.Decorator设计模式 1.1.Decorator设计模式介绍 当某个对象的方法不适应业务需求时,通常有2种方式可以对方法进行增强: 编写子类,覆盖需增强的

解决中文乱码过滤器

解决中文乱码过滤器 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;

SSH项目web.xml文件的常用配置【struts2的过滤器、spring监听器、解决Hibernate延迟加载问题的过滤器、解决中文乱码的过滤器】

配置web.xml(struts2的过滤器.spring监听器.解决Hibernate延迟加载问题的过滤器.解决中文乱码的过滤器) <!-- 解决中文乱码问题 --> <filter> <filter-name>characterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-c