java中JDBC执行带有中文的sql语句时查询不到结果

我的sql语句如下:

 ResultSet rs = statement.executeQuery("select * from student_login where s_no = '" + sno+ "' and s_name = '" + username +"';");

其中username为中文
在navicat中可以正常查询,但是在ide中查询不到结果

解决办法:
在获取连接对象的时候,在url后面追加可以识别中文的标识 (?useUnicode=true&characterEncoding=utf8)
如下:

conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/student?useUnicode=true&characterEncoding=utf8","root","123456");

你可能感兴趣的:(Java基础,解决报错,java)