Properties properties= new Properties();
properties.setProperty("user", login);
properties.setProperty("password", password);
properties.setProperty("useUnicode","true");
properties.setProperty("characterEncoding","UTF-8");
conn = DriverManager.getConnection("jdbc:mysql://" + host + "/" + db, properties);
String message = "Раунд " + nextRoomId;
Data.db.executeUpdate("INSERT INTO chat(message) VALUES('" + message + "')");
我得到這個:的Java無法插入UTF-8西里爾字符串到MySQL
Раунд 338
MySQL的配置:
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
表和數據庫完全UTF-8編碼,我不能從java中插入西里爾字符串,因爲我的表中編碼不好的字符串
我做錯了什麼?
編輯器使用utf-8沒有BOM,我該如何編譯utf-8編碼的代碼? ,我試過這樣的:javac -encoding = UTF-8 Main.java,但是-encoding標誌是無效的 –
我試過了javac -encoding utf8 Main.java - 工作很好,謝謝你maan! –
祝賀,UTF -8我看到的越來越多,你使用的是哪個構建系統?在_maven_中,很簡單:pom.xml,編譯器插件,在_ant_中,它是javac任務的一個屬性,對於純粹的獲取:'javac -encoding = UTF -8 ...'。 –