`

Tomcat 接受URI的中文参数

阅读更多

Tomcat 默认是用 ISO-8859-1 处理URI中的参数

所以,如果URI参数中含UTF-8编码的话,如果直接读取会出现乱码。

两个解决办法 :

1. 改配置,在tomcat的server.xml 的connector中加入URIEncoding="UTF-8"

 

 <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" 
               compression="on"   
               compressionMinSize="50" 
               noCompressionUserAgents="gozilla, traviata"   
               compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"
               URIEncoding="UTF-8"
               />

 2. 或者改程序,对接受到的参数进行转换

 

 

protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//....
    String value=req.getParameter(key).getBytes("ISO-8859-1"),"UTF-8")
//...
}

 

 

分享到:
评论

相关推荐

    springboot乱码问题解决方案

    server.tomcat.uri-encoding=UTF-8 这将设置SpringBoot项目的字符编码为UTF-8,解决乱码问题。 2. Maven插件配置 在pom.xml文件中添加以下配置: &lt;groupId&gt;org.springframework.boot &lt;artifactId&gt;spring-...

    how tomcat work_中文版(源码)

    《如何让Tomcat工作:中文版(源码)》是一份深入探讨Web服务器Tomcat工作原理的资源,其中包含了详细的理论讲解以及配套的源码分析。这份资料旨在帮助读者理解Tomcat内部机制,从而能够更好地优化和调试应用程序。 ...

    java代码启动tomcat

    在本示例代码中,我们将 Tomcat 服务器的端口号设置为 15435,基础目录设置为当前目录下的 server 文件夹,并将 URI 编码设置为 UTF-8。 知识点 4: Tomcat 服务器的生命周期 Tomcat 服务器的生命周期主要包括启动...

    Uri一个URI处理库

    - **修改URI组件**:你可以单独修改URI的任何部分,如更改路径、添加或删除查询参数、更新主机名等,然后重新组合成一个新的URI字符串。 - **规范化和比较URI**:Uri库支持URI的规范化,确保相同含义的URI以相同的...

    redirect_uri参数错误的解决方法(必看)

    在进行Web应用开发时,尤其是涉及到用户授权与第三方服务集成的部分,我们经常遇到"redirect_uri参数错误"这类问题。这通常发生在使用OAuth2.0授权协议进行身份验证和权限获取时。OAuth2.0是一种广泛使用的开放标准...

    Tomcat Was7 javax.servlet.forward.request_uri属性的差异

    这篇博客文章可能探讨了在Tomcat和WebSphere AS 7中使用`javax.servlet.forward.request_uri`属性时的行为差异。在Servlet规范中,当一个请求被转发到另一个内部资源时,这个属性用于保留原始请求的URL,以便后续...

    博客《Uri详解之——Uri结构与代码提取》对应源码

    博客中的源码可能涵盖了如何解析Uri,提取查询参数,以及通过Uri与ContentProvider进行数据交互的过程。例如,使用`Uri.withAppendedPath()`添加路径,使用`Uri.encode()`和`Uri.decode()`进行URL编码解码。 7. **...

    linux配置Tomcat集群

    - URI映射配置:`[uri:/*.jsp] group=lb:lb1` 2. **第一个Tomcat的JK2配置文件jk2.properties**: - 文件位于第一个Tomcat安装目录下的`conf`目录中。 - 主要配置项为`channelSocket.port=11009`,用以指定与...

    androdi ContentProvider和Uri详解

    在Android开发中,ContentProvider和Uri是两个至关重要的概念,它们是Android系统中不同应用程序间数据共享和交互的基础。本文将深入探讨这两个组件的工作原理、使用方法以及它们在实际开发中的应用。 首先,我们来...

    Android中Intent的Uri使用

    这里,“searchString”参数用于指定搜索关键词。需要注意的是,在调用`startActivity(intent)`之前必须确保当前设备已安装支持此动作的应用程序,否则会抛出异常。 ### 2. 打开网页 使用`ACTION_VIEW`动作结合...

    Tomcat-5.5.9版

    例如,增加`maxThreads`参数以提高并发处理能力,或者设置`useURIValidationHack`为`false`以减少URI解析的性能开销。同时,合理配置内存大小(通过JVM启动参数 `-Xms` 和 `-Xmx`)也至关重要,确保服务器有足够的...

    tomcat6到8windows版本.zip

    【标题】"tomcat6到8windows版本.zip" 涵盖了三个不同版本的Apache Tomcat,分别是Tomcat 6、Tomcat 7和Tomcat 8.5,这些都是针对Windows操作系统设计的64位版本。Apache Tomcat是一款开源的Java Servlet容器,主要...

    tomcat7性能调优

    另外,提到的`maxSpareThreads`、`maxProcessors`和`minProcessors`等参数在不同版本的Tomcat中有变化,它们在Tomcat5及更早版本中存在,但在Tomcat6和7中已被废弃或替换,因此在优化时无需考虑这些参数。...

    Android Uri

    "Android Uri详解" Android Uri是Android系统中的一种通用资源标志符(Universal Resource Identifier, 简称"URI"),它代表要操作的数据。Android 上可用的每种资源 - 图像、视频片段等都可以用 Uri 来表示。Uri ...

    JSTL标签库依赖,内含Tomcat8、Tomcat10所需JSTL依赖

    **Tomcat8和Tomcat10**是Apache Tomcat服务器的两个不同版本。Tomcat8是一个流行的开源Servlet容器,支持Java EE 7规范。而Tomcat10则是为Java EE 8和Java EE 9规范设计的,尽管这两个版本的Tomcat在功能上有所增强...

    How Tomcat Works 深入剖析Tomcat (英文版)

    1. 创建请求对象并填充与请求相关的各种信息,例如参数、头信息、cookies、查询字符串、URI等。请求对象是javax.servlet.ServletRequest接口或javax.servlet.http.HttpServletRequest接口的一个实例。 2. 调用...

    android 根据uri获取真实路径

    1. **参数检查**:首先检查传入的`Uri`是否为空,如果为空则直接返回`null`。 2. **提取URI的Scheme**:通过调用`getScheme()`方法获取`Uri`的scheme部分。这一步非常重要,因为根据不同的scheme,处理的方式也会...

    how tomcat works (tomcat是怎么工作的 英文版)

    基本上,一个Servlet容器为服务一个Servlet请求,主要完成以下三件事:首先,创建一个请求对象,并填充可能被调用的Servlet使用的各种信息,如参数、头信息、cookies、查询字符串、URI等。请求对象是javax.servlet....

Global site tag (gtag.js) - Google Analytics