带emoji字符串无法存入utf8数据库的解决办法

简介: 包含emoji的字符串,如,无法存入utf8编码格式的mysql数据库。网上说的解决办法有两种,一是自己转换,而是将数据库编码全部改成utf8mb4。这里介绍的是第一种办法。

包含emoji的字符串,如,无法存入utf8编码格式的mysql数据库。网上说的解决办法有两种,一是自己转换,而是将数据库编码全部改成utf8mb4。这里介绍的是第一种办法。

使用插件:emoji-java

使用代码
package com.kuyuntech.util;

import com.kuyuntech.aop.ServiceLogAspect;
import com.vdurmont.emoji.EmojiParser;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class EmojiConvertUtil {
    private final static Logger log = LoggerFactory.getLogger(ServiceLogAspect.class);

    /**
     * 将emoji字符串转换为数据库中可存储的字符串
     * @param emojiStr
     * @return
     */
    public static String emojiToStr(String emojiStr){
        return EmojiParser.parseToAliases(emojiStr);
    }

    /**
     * 将数据库中的字符串转换为emoji字符串
     * @param str
     * @return
     */
    public static String strToEmoji(String str){
        return EmojiParser.parseToUnicode(str);
    }
}

相关文章
|
4月前
|
NoSQL Java 数据库连接
使用Java实现从数据库查出数据存入Redis,并在查询时先查Redis,如果Redis中没有数据再从数据库中读取
使用Java实现从数据库查出数据存入Redis,并在查询时先查Redis,如果Redis中没有数据再从数据库中读取
580 1
|
1月前
|
SQL 数据库 数据安全/隐私保护
SQL Server数据库Owner导致事务复制log reader job无法启动的解决办法
【8月更文挑战第14天】解决SQL Server事务复制Log Reader作业因数据库所有者问题无法启动的方法:首先验证数据库所有者是否有效并具足够权限;若非,使用`ALTER AUTHORIZATION`更改为有效登录名。其次,确认Log Reader使用的登录名拥有读取事务日志所需的角色权限。还需检查复制配置是否准确无误,并验证Log Reader代理的连接信息及参数。重启SQL Server Agent服务或手动启动Log Reader作业亦可能解决问题。最后,审查SQL Server错误日志及Windows事件查看器以获取更多线索。
|
27天前
|
开发框架 .NET 关系型数据库
【Azure 应用服务】App Service 通过门户配置数据库连接字符串不生效 
【Azure 应用服务】App Service 通过门户配置数据库连接字符串不生效 
|
2月前
|
前端开发 数据库
文本----富文本数据如何存入到数据库当中,解决方法,看其他大佬写的文章
文本----富文本数据如何存入到数据库当中,解决方法,看其他大佬写的文章
文本----富文本数据如何存入到数据库当中,解决方法,看其他大佬写的文章
|
3月前
|
JavaScript 关系型数据库 MySQL
Python实战:从猎聘网获取职位信息并存入数据库
Python实战:从猎聘网获取职位信息并存入数据库
|
3月前
|
关系型数据库 数据库 PostgreSQL
PostgreSQL数据库的字符串拼接语法使用说明
【6月更文挑战第11天】PostgreSQL数据库的字符串拼接语法使用说明
332 1
|
3月前
|
XML 机器学习/深度学习 存储
技术心得:对象的序列化存入数据库,与反序列化
技术心得:对象的序列化存入数据库,与反序列化
33 0
|
4月前
|
关系型数据库 MySQL Linux
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)
|
3月前
|
存储 传感器 时序数据库
时序数据库influx有字符串拼接函数吗
【6月更文挑战第25天】时序数据库influx有字符串拼接函数吗
46 0
|
3天前
|
NoSQL 关系型数据库 MySQL
微服务架构下的数据库选择:MySQL、PostgreSQL 还是 NoSQL?
在微服务架构中,数据库的选择至关重要。不同类型的数据库适用于不同的需求和场景。在本文章中,我们将深入探讨传统的关系型数据库(如 MySQL 和 PostgreSQL)与现代 NoSQL 数据库的优劣势,并分析在微服务架构下的最佳实践。