为什么我的Java/Spring/Tomcat堆栈将非英语字符转换为两个单独的字符?
当我访问URL并使用request.getParameter(“q”)时,字符串变成jalapeños而不是jalapeños。显然这是个问题 我正在用tomcat运行Spring3,一切都“说”它是以UTF8的形式出现的;这意味着它应该被渲染成墨西哥辣椒为什么我的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,而是
救命啊 检查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编码
另请参见
<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编码
另请参见