java 数据库编码,该怎么处理
java 数据库编码
package org.zjl.preparedstatementdem01;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.text.SimpleDateFormat;
public class PreparedStatementDem01 {
public static final String DBDRIVER="org.gjt.mm.mysql.Driver";
public static final String DBURL="jdbc:mysql://localhost:3306/zjl";
public static final String DBUSER="root";
public static final String DBPASS="mysqladmini";
public static void main(String[] args)throws Exception {
Connection conn=null;
PreparedStatement pstmt=null;
String name="邹继林"; 数据库里显示问号
String password="www.mldnjava.cn";
int age=30;
String sex="男"; 数据库里显示问号
String birthday="2007-08-27";
java.util.Date temp=null;
temp=new SimpleDateFormat("yyyy-MM-dd").parse(birthday);
java.sql.Date bir=new java.sql.Date(temp.getTime());
String sql="INSERT INTO user(name,password,age,sex,birthday)"
+"VALUES(?,?,?,?,?)";
Class.forName(DBDRIVER).newInstance();
conn=DriverManager.getConnection(DBURL,DBUSER,DBPASS);
pstmt=conn.prepareStatement(sql);
pstmt.setString(1, name);
pstmt.setString(2, password);
pstmt.setInt(3, age);
pstmt.setString(4, sex);
pstmt.setDate(5,bir);
pstmt.executeUpdate();
pstmt.close();
conn.close();
}
}
eclipse 里的GBK编码
使用的是MYSQL数据库,我将数据库里的编码格式全部设成了GBK还是不行,以下是设制的内容
character_set_client =gbk
character_set_connection=gbk
character_set_database =gbk
|character_set_results=gbk
character_set_server =gbk
character_set_system=gbk
------解决思路----------------------
设置完以后重启一下数据库,看看编码是不是还是gbk
------解决思路----------------------
建议 public static final String DBDRIVER="org.gjt.mm.mysql.Driver";
public static final String DBURL="jdbc:mysql://localhost:3306/zjl?useUnicode=true&characterEncoding=gbk";
public static final String DBUSER="root";
public static final String DBPASS="mysqladmini";
package org.zjl.preparedstatementdem01;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.text.SimpleDateFormat;
public class PreparedStatementDem01 {
public static final String DBDRIVER="org.gjt.mm.mysql.Driver";
public static final String DBURL="jdbc:mysql://localhost:3306/zjl";
public static final String DBUSER="root";
public static final String DBPASS="mysqladmini";
public static void main(String[] args)throws Exception {
Connection conn=null;
PreparedStatement pstmt=null;
String name="邹继林"; 数据库里显示问号
String password="www.mldnjava.cn";
int age=30;
String sex="男"; 数据库里显示问号
String birthday="2007-08-27";
java.util.Date temp=null;
temp=new SimpleDateFormat("yyyy-MM-dd").parse(birthday);
java.sql.Date bir=new java.sql.Date(temp.getTime());
String sql="INSERT INTO user(name,password,age,sex,birthday)"
+"VALUES(?,?,?,?,?)";
Class.forName(DBDRIVER).newInstance();
conn=DriverManager.getConnection(DBURL,DBUSER,DBPASS);
pstmt=conn.prepareStatement(sql);
pstmt.setString(1, name);
pstmt.setString(2, password);
pstmt.setInt(3, age);
pstmt.setString(4, sex);
pstmt.setDate(5,bir);
pstmt.executeUpdate();
pstmt.close();
conn.close();
}
}
eclipse 里的GBK编码
使用的是MYSQL数据库,我将数据库里的编码格式全部设成了GBK还是不行,以下是设制的内容
character_set_client =gbk
character_set_connection=gbk
character_set_database =gbk
|character_set_results=gbk
character_set_server =gbk
character_set_system=gbk
------解决思路----------------------
设置完以后重启一下数据库,看看编码是不是还是gbk
------解决思路----------------------
建议 public static final String DBDRIVER="org.gjt.mm.mysql.Driver";
public static final String DBURL="jdbc:mysql://localhost:3306/zjl?useUnicode=true&characterEncoding=gbk";
public static final String DBUSER="root";
public static final String DBPASS="mysqladmini";