zoukankan      html  css  js  c++  java
  • tomcat中的server.xml文件配置了URIEncoding="UTF-8"需要注意的问题

    1.      get请求传递中文时本地连正式库访问都正常,正式环境下单独访问报错

    代码:

               请求:project/projectInfo/export/?cks=’项目类型

    public String export(ProjectIn foprojectInfo,

    HttpServletRequest request,HttpServletResponse response, Model model) {

       String cks =request.getParameter("cks");

    //获取有被选中的字段

    cks=new String(cks.getBytes("ISO-8859-1"),"utf-8");   

      return null;

       }

    本地能够正常获取到cks并对cks进行解码

    问题原因:

    本地tomcat中的server.xml文件:

    <ConnectorconnectionTimeout="20000" port="8080"protocol="HTTP/1.1" redirectPort="8443" />

    正式环境 tomcat中的server.xml文件:

    <Connector connectionTimeout="20000"port="8080" protocol="HTTP/1.1"redirectPort="8443" maxPostSize="0" URIEncoding="UTF-8"/>

    因为本地没有配置URIEncoding="UTF-8"原因对中文进行了解码,因此本地正常

    而正式库已经tomcat服务器已经对get请求进行了解码,代码中又对该字符串进行了一次解码,所以就导致错误

    解决方法:

    代码中将

    cks=new String(cks.getBytes("ISO-8859-1"),"utf-8");注释
    ---------------------
    作者:ShiroGe
    来源:CSDN
    原文:https://blog.csdn.net/hfs1992/article/details/77233707
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    js关闭当前页面(窗口)的几种方式总结
    Servlet 文件上传
    Servlet Cookie 处理
    Servlet Session 跟踪
    Servlet 异常处理
    Servlet 编写过滤器
    Servlet HTTP 状态码
    Servlet 服务器 HTTP 响应
    Servlet 客户端 HTTP 请求
    Servlet 表单数据
  • 原文地址:https://www.cnblogs.com/husam/p/10855702.html
Copyright © 2011-2022 走看看