java输出中文的时候出现?的问题

java编写的聊天系统,注册的时候用户名输入中文可以注册,但是登陆时提示的是用户名或密码不准确。数据库软件用的是MySQL,数据库里面操作时,写入中文可识别,但是通过java代码写入的用户名英文可识别,中文显示??

部分代码://查询数据库验证用户名和密码
public boolean conform() {
String name = text1.getText().trim();
String password = new String(pw.getPassword());
String sql = "select * from user where name='" + name +"'";
System.out.println(sql);
conn = ConnDB.getConn();
stmt = ConnDB.getStmt(conn);
rs = ConnDB.executeQuery(stmt, sql);
try {
while (rs.next()) {
System.out.println(rs.getString(1) + rs.getString(2));
if (name.equals(rs.getString(1)) && password.equals(rs.getString(2))) {
return true;
}
}
ConnDB.close(rs);
ConnDB.close(stmt);
ConnDB.close(conn);
} catch (SQLException e1) {
e1.printStackTrace();
return false;
}
return false;
}
输入结果:
select * from user where name='陈聪'
??a
??a
这个是什么原因呢???

不好意思,没分了~哎

编码出错了,要保持mysql与java的编码一致,先把数据库的编码设一下
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-06-02
数据编码的问题
要一致才行。。
你看下MYSQL的编码 和你JAVA的编码格式
相似回答