JDBC连接数据库出现中文乱码
JDBC连接数据库出现中文乱码
分别排查以下
-
数据库中编码设置,以及数据库中表和字段的编码(表和字段编码不单独设置的话和数据库编码一致)
-
检查HTML编码(JSP编码)
HTML:<meta charset="utf-8"/>
JSP:<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
-
检查编辑器的编码(默认GBK),以myeclipse为例:右键点击项目名,选择Properties
-
在servlet中设置请求和响应的编码
request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); response.setCharacterEncoding("utf-8");
-
如果上述都不行的话,修改tomcat下conf中的server.xml文件
将:<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443"/>
后面添加useBodyEncodingForURI=“true”,改为:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" useBodyEncodingForURI="true"/>