我已经解决了,看地址
http://www.cnblogs.com/yjmyzz/p/mysql-utf8mb4-jdbc.html==>3093IZVc: 2016-06-2010:43:55,294ERRORcom.bsteel.vs.webapp.controller.BaseController:181-org.springframework.jdbc.UncategorizedSQLException:PreparedStatementCallback;uncategorizedSQLExceptionforSQL[INSERTINTOvsns_topicSET`from`=?,`type`=?,`uid`=?,`videoid`='0',`lastupdate`=UNIX_TIMESTAMP(),`dateline`=UNIX_TIMESTAMP(),`totid`=?,`touid`=?,`anonymous`='0',`item`='',`item_id`='0',`channel_id`='0',`username`=?,`musicid`='0',`roottid`='0',`content`=?,`postip`=?,`post_ip_port`='64020'];SQLstate[HY000];errorcode[1366];Incorrectstringvalue:'\xF0\x9F\x98\x81\xF0\x9F...'forcolumn'content'atrow1;nestedexceptionisjava.sql.SQLException:Incorrectstringvalue:'\xF0\x9F\x98\x81\xF0\x9F...'forcolumn'content'atrow1
==>3093IZVc: 2016-06-2010:43:55,294ERRORcom.bsteel.vs.webapp.controller.BaseController:183-org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:84)
==>3093IZVc: 2016-06-2010:43:55,295ERRORcom.bsteel.vs.webapp.controller.BaseController:183-org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
==>3093IZVc: 2016-06-2010:43:55,295ERRORcom.bsteel.vs.webapp.controller.BaseController:183-org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
==>3093IZVc: 2016-06-2010:43:55,296ERRORcom.bsteel.vs.webapp.controller.BaseController:183-org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:660)
==>3093IZVc: 2016-06-2010:43:55,298ERRORcom.bsteel.vs.webapp.controller.BaseController:183-org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:909)
==>3093IZVc: 2016-06-2010:43:55,298ERRORcom.bsteel.vs.webapp.controller.BaseController:183-org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:970)
==>3093IZVc: 2016-06-2010:43:55,299ERRORcom.bsteel.vs.webapp.controller.BaseController:183-org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:980)
==>3093IZVc: 2016-06-2010:43:55,299ERRORcom.bsteel.vs.webapp.controller.BaseController:183-com.bsteel.vs.dao.impl.TopicDaoImpl.saveTopic(TopicDaoImpl.java:35)
看一下你要保存表情的字段编码是不是utf8mb4可以考虑把
content字段用base64转码后再存储。表情字段一般用blob类型存储,查询的时候再转一下即可
这是重构的项目,别人用php都可以的,用java就不可以了
这个错误应该是很数据库有关系。前不久刚碰到过。
https://segmentfault.com/a/1190000000616820
这个帖子整理的还算比较完整的。很多人在使用mysql数据库的时候遇到编码问题,在mysql数据库使用时,
字符集和校对规则有4个级别的默认设置:服务器级、数据库级、表级和连接级
你需要查下你各级别字符集跟校对规则,修改成你需要的字符集及校对规则就可以了。
参考自:
MySQL的字符集和校对