mysql写入中文乱码

MySql系列:中文写入数据库出现错误java.sql.SQLException: Incorrect string value: ‘\xE5\xxxx’ for column ‘xxxx’ at row 1及其解决方法
在将kft-activiti-demo的数据库连接改为mysql之后,可以正常登陆,但是在新建请假流程的时候出现如下错误:

Caused by: java.sql.SQLException: Incorrect string value: ‘\xE5\x85\xAC\xE4\xBC\x91’ for column ‘leave_type’ at row 1
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:998)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3847)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3783)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2447)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2594)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2545)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1901)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2113)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2049)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2034)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:133)
… 122 more

经过查找发发现是由于mysql连接设置的有问题,在application.properitis中设置的连接如下:
jdbc.url=jdbc:mysql://localhost:3306/kafeitu?useUnicode=true&characterEncoding=utf-8

应该改为:
jdbc.url=jdbc:mysql://localhost:3306/kafeitu?useUnicode=true&characterEncoding=utf-8

转载:原文

嘿 ,在再次发现我的问题跟这个还是不一样,不是mysql-url导致的编码问题,而是数据库的问题, 当时进行检查,数据库以及表的编码都是utf-8,但是谁知道字段还有编码,坑爹

这里写图片描述

你可能感兴趣的:(mysql)