过滤器解决中文乱码

@WebServlet(urlPatterns = "/form")
public class FormServlet extends HttpServlet {
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String username = request.getParameter("username");
        response.getWriter().write("哈哈");
        System.out.println(username);
    }
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doGet(request,response);
    }
}
@WebFilter(urlPatterns = "/*")
public class ChinaFilter implements Filter {
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {}
    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
        //在过滤器中,设置request对象的编码表
        servletRequest.setCharacterEncoding("utf-8");
        //设置response缓冲区的编码表,通知浏览器的解码
        servletResponse.setContentType("text/html;charset=utf-8");
        //放行
        filterChain.doFilter(servletRequest,servletResponse);
    }
    @Override
    public void destroy() {}
}
<body>
    <form action="${pageContext.request.contextPath}/form" method="post">
        <input type="text" name="username">
        <input type="submit">
    </form>
</body>

原文地址:https://www.cnblogs.com/xiaomingVVV/p/11332802.html

时间: 2024-08-02 09:17:02

过滤器解决中文乱码的相关文章

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

过滤器解决中文乱码问题

package cn.itcast.demo1; import java.io.IOException; import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; import java.lang.reflect.Proxy; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.Filt

配置过滤器解决中文乱码问题

<!-- 字符集过滤器 -->      <filter>          <filter-name>Charset</filter-name>          <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>            <init-param>              <param

使用过滤器解决中文乱码

知识点回顾 (1)request.setCharacterEncoding() 这个方法是设置请求体的字符编码,它告诉java应该用什么格式解码. 这种方式只对POST请求有效,因为POST请求的参数在请求体中. (2)response.setCharacterEncoding()  设置响应的字符编码 (3)URIEncoding     server.xml文件中Connector元素的URIEncoding属性指定解码URI的字符编码,默认是ISO-8859-1 GET请求的时候,请求参数

解决中文乱码过滤器

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

java web过滤器实际应用(解决中文乱码 html标签转义功能 敏感字符过滤功能)

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

springmvc:配置解决中文乱码的过滤器

在web.xml中配置以下内容: <!--配置解决中文乱码过滤器--> <filter> <filter-name>characterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <!--初始化参数--> <init-param> &

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