为什么我的Java/Spring/Tomcat堆栈将非英语字符转换为两个单独的字符?

为什么我的Java/Spring/Tomcat堆栈将非英语字符转换为两个单独的字符?,java,spring,tomcat,servlets,Java,Spring,Tomcat,Servlets,当我访问URL并使用request.getParameter(“q”)时,字符串变成jalapeños而不是jalapeños。显然这是个问题 我正在用tomcat运行Spring3,一切都“说”它是以UTF8的形式出现的;这意味着它应该被渲染成墨西哥辣椒 救命啊 检查tomcat的编码。 根据Servlet规范(请参阅),默认规范不是UTF-8,而是ISO-8859-1 也来看看。这很可能会解决您的问题。检查tomcat的编码。 根据Servlet规范(请参阅),默认规范不是UTF-8,而是

当我访问URL并使用request.getParameter(“q”)时,字符串变成jalapeños而不是jalapeños。显然这是个问题

我正在用tomcat运行Spring3,一切都“说”它是以UTF8的形式出现的;这意味着它应该被渲染成墨西哥辣椒


救命啊

检查tomcat的编码。 根据Servlet规范(请参阅),默认规范不是UTF-8,而是ISO-8859-1


也来看看。这很可能会解决您的问题。

检查tomcat的编码。 根据Servlet规范(请参阅),默认规范不是UTF-8,而是ISO-8859-1


也来看看。这很可能会解决您的问题。

唯一可能的原因是软件链中的UTF8配置错误

重新检查:
-此主机的服务器配置 -弹簧配置 -web应用程序的Java配置 -当然,你的元数据在网页的开头:

<meta http-equiv="Content-type" content="text/html; charset=utf-8" />

唯一可能的原因是软件链中的UTF8配置错误

重新检查:
-此主机的服务器配置 -弹簧配置 -web应用程序的Java配置 -当然,你的元数据在网页的开头:

<meta http-equiv="Content-type" content="text/html; charset=utf-8" />

您需要像这样配置tomcat

<Connector port="8080" maxHttpHeaderSize="8192"
 maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
 enableLookups="false" redirectPort="8443" acceptCount="100"
 connectionTimeout="20000" disableUploadTimeout="true" 
 compression="on" 
 compressionMinSize="128" 
 noCompressionUserAgents="gozilla, traviata" 
 compressableMimeType="text/html,text/xml,text/plain,text/css,text/ javascript,application/x-javascript,application/javascript"
 URIEncoding="UTF-8"
/>

注意:UTF8编码

另请参见


您需要像这样配置tomcat

<Connector port="8080" maxHttpHeaderSize="8192"
 maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
 enableLookups="false" redirectPort="8443" acceptCount="100"
 connectionTimeout="20000" disableUploadTimeout="true" 
 compression="on" 
 compressionMinSize="128" 
 noCompressionUserAgents="gozilla, traviata" 
 compressableMimeType="text/html,text/xml,text/plain,text/css,text/ javascript,application/x-javascript,application/javascript"
 URIEncoding="UTF-8"
/>

注意:UTF8编码

另请参见


客户端的accept标头如何。这包括UTF-8吗?可能与客户端的accept标头重复。这包括UTF-8吗?可能是So的重复,答案是Funtik和Jigar的组合我修改了连接器并添加了useBodyEncodingForURI=“true”所以答案是Funtik和Jigar的组合我修改了连接器并添加了useBodyEncodingForURI=“true”