解决方案:在原有连接MySQL数据库的代码基础上添加:?useUnicode=true&characterEncoding=utf-8
如:
首先创建一张表:
通过以下代码将userid为“1001”的“马芸”同学username修改为“任正肥”,
public static void main(String[] args) throws ClassNotFoundException, SQLException {
Class.forName("com.mysql.jdbc.Driver");
//建立连接
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/bankmanager", "root", "123456");
//将userid为“1001”的“马芸”同学username修改为“任正肥”
String sql1 = "update user set username='任正肥' where userid=1001";
PreparedStatement pps = conn.prepareStatement(sql1);
boolean rs = pps.execute();
System.out.println(rs);
pps.close();
conn.close();
}
刷新表,显示如下,出现中文乱码情况:
在下面一行连接MySQL数据库代码中添加?useUnicode=true&characterEncoding=utf-8
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/bankmanager", "root", "123456");
添加后为:
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/bankmanager?useUnicode=true&characterEncoding=utf-8", "root", "123456");
再次运行,刷新表,显示如下:
问题得到了解决!!