JDBC :将unicode utf 8字符插入到MySQL 中(范例)
Xn_warm
・1 分钟阅读
案件 :
你正在使用JDBC在Java应用程序中插入带有unicode字符的字符串,并且看到很多??字符
如何修复它:
首先:
如果你的Java应用程序正在读取数据,例如,文本文件,确保在调用输入流时指定了正确的字符编码,它应该类似于下面这样:
BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(filePath),"UTF-8" ) );
第二:
请确保告诉JDBC要使用哪个编码,当连接到数据库时,这是查询字符串的一部分,
注意这个部分:useunicode=yes这就是魔法发生的地方。
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/dbname?useUnicode=yes&characterEncoding=UTF-8","username","password");
第三:
确保表使用UTF-8. 我通常使用编码: UTF-8 Unicode (utf8 )和Collation : utf8_bin"
干杯,
愿代码与你同在!