在开发过程中,特别是微信开发,会遇到需要将emoji表情存入数据库的情况,由于数据库utf-8编码为3个字节,emoji表情转换字符是4个字节,存入会报异常,异常信息:
解决方案网上也有很多,但都不是很全,这里记录总结一下:
1,修改数据库对应字段编码为utftmb4,前提为数据库版本最低为MySQL5.5.3,保险起见也可以把数据库、数据库表的编码也设置为utf8mb4,只不过耗费资源会更多一点;
2,mysql链接配置url = jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf8
druid数据源配置添加 <property name="connectionInitSqls" value="set names utf8mb4;"/>
其他网上还有修改my.ini my.cnf的,自己亲试之后可以不用修改
版权声明:本文为原创,转载需标明出处: