• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    JSP用过滤器解决request getParameter中文乱码问题

    (1)客户端的数据一般是通过HTTP GET/POST方式提交给服务器,在服务器端用request.getParameter()读取参数时,很容易出现中文乱码现象。

    (2)用过滤器解决request中文乱码问题。

    (3)代码如下:

    package my; 
    
    import java.io.*; 
    import javax.servlet.*; 
    import javax.servlet.http.*; 
    
    public class ChineseFilter implements Filter { //定义了一个过滤器 实现Filter接口 
    
    private FilterConfig config = null; 
    
    public void init(FilterConfig config) throws ServletException { 
    this.config = config; 
    } 
    
    public void destroy() { 
    config = null; 
    } 
    
    public void doFilter(ServletRequest request, ServletResponse response, 
    FilterChain chain) throws IOException, ServletException 
    { 
    request.setCharacterEncoding("GB2312"); 
    chain.doFilter(request, response); //把过滤后的request对象转发给下一个过滤器处理 
    } 
    }

    (4)部署过滤器。编辑WEB-INF\web.xml文件,添加以下内容:

    filter> 
    filter-name>cf/filter-name> 
    filter-class>my.ChineseFilter/filter-class> 
    /filter> 
    filter-mapping> 
    filter-name>cf/filter-name> 
    url-pattern>/*/url-pattern> 
    dispatcher>REQUEST/dispatcher> 
    dispatcher>FORWARD/dispatcher> 
    dispatcher>INCLUDE/dispatcher> 
    /filter-mapping>

    这里的dispatcher>/dispatcher>主要是配合RequestDispatcher使用。

    1.取值为REQUEST时 表示有请求直接来自客户端时,过滤器才能被激活,如果请求是来自RequestDispatcher.forward时不激活;

    2.取值为FORWARD时 表示如果请求是来自RequestDispatcher.forward时此过滤器才激活;

    3.取值为INCLUDE时 表示如果请求是来自RequestDispatcher.include时此过滤器才激活;

    4.取值为ERROR时 表示如果请求是来自RequestDispatcher使用“错误信息页”时此过滤器才激活;

    5.默认为REQUEST。

    (5)创建一个jsp页面检验

    %@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %> 
    !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    html xmlns="http://www.w3.org/1999/xhtml"> 
    head> 
    meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
    title>无标题文档/title> 
    /head> 
    
    body> 
    % 
    String s=request.getParameter("data"); 
    out.print(s); 
    %> 
    /body> 
    /html>

    (6)OK!到此结束 望你成功!

    您可能感兴趣的文章:
    • jsp request.getParameter() 和request.getAttribute()方法区别详解
    • java request.getParameter中文乱码解决方法
    • request.getParameter()取值为null的解决方法
    • js获得参数的getParameter使用示例
    • 基于request.getAttribute与request.getParameter的区别详解
    • Java getParameter方法案例详解
    上一篇:JSP动态生成验证码存储在session作用范围内
    下一篇:JSP隐含对象response实现文件下载的两种方法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    JSP用过滤器解决request getParameter中文乱码问题 JSP,用,过滤器,解决,request,