1.线上碰到个问题,端上切换搜狗输入法后,原来限制的表情符号还能输入。数据库使用的是5.7.22版本的,刚开始以为数据库不支持表情符号导致的,但是看了线上的数据库以及字段,都是支持的。

 

show variables like '%character%';

mysql 5.7数据库支持emoji符号但是程序总算报错Incorrect string value: '\xF0\x9F\x98\x84\xF0\x9F...' for column ...

 

show full columns from driver_reward_record;

 

mysql 5.7数据库支持emoji符号但是程序总算报错Incorrect string value: '\xF0\x9F\x98\x84\xF0\x9F...' for column ...

 

 

 

直接使用sql语句通过navicate 客户端,也是可以插入成功的。但是在程序里面 死活插入不进去,这就郁闷了。

 

     看了下mysql的 mysql-connector-java 版本是5.1.34,大于5.1.13 也是没问题的。数据库、表、字段 都是utf8mb4的,也是正常的。然后怀疑是项目 过滤器编码的问题,但是在项目里面写死然后启动项目,仍然提示插入错误:Incorrect string value: '\xF0\x9F\x98\x84\xF0\x9F...' for column ...     这就郁闷了啊~~

 

  然后网上各种找解决方案,最后总算找到了。参考了

  https://blog.csdn.net/KillerAwp/article/details/82356042 这篇文章。 最后的解决方案:

 

修改应用连接字符串(druid):
<bean />  // 必须添加
</bean>

 

总算解决了。

 

相关文章:

  • 2022-12-23
  • 2021-05-11
  • 2021-09-09
  • 2021-07-23
  • 2022-12-23
  • 2021-10-04
  • 2022-12-23
猜你喜欢
  • 2021-08-19
  • 2022-12-23
  • 2022-12-23
  • 2021-05-21
  • 2022-01-22
  • 2022-12-23
相关资源
相似解决方案