项目在测试服务器上没有任何问题,但是部署到新的服务器上之后就出现数据出不来的问题。一开始以为是数据库的编码问题,但是改了表的编码方式之后还是存在原来的问题。挺苦恼的。因为我可以远程看到tomcat的控制台的输出信息,发现输出的sql语句出现了乱码。之前公司里的一个牛人说过,tomcat在发送请求的时候, 默认情况下,Tomcat对请求采用的默认编码是ISO-8859-1,所以会导致,后台接收到到的中文乱码,导致各种问题。
循着这条思路,最终通过修改tomcat的默认get请求的编码方式,问题得以解决。
解决方案:
在tomcat/conf目录下修改server.xml文件中的Connector(Http/1.1方式的)
<Connector port="8018" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>