将表情存入数据库

news2024/11/17 15:56:17

概念:
表情是一种比较特殊的字符串,为unicode编码,unicode编码要存入数据库一般情况下,是存不了的,有两种解决方式,一种将数据表编码方式改为unicode编码方式,但是这种情况适用于功能刚开始设计时如此,如果我们已经设计为数据表,但是并不是unicode编码时,如何存入数据库呢 ?
这里将分为4步实现功能:
1.使用正则校验传入内容是否为unicode编码
2.将表情编码转换成可读的表情字符
3.将带有表情的字符转换为表情编码(存入数据库)
4.将内容存入数据库

import com.github.binarywang.java.emoji.EmojiConverter;

private static final EmojiConverter emojiConverter = EmojiConverter.getInstance();

// 正则
public static final String UNICODE_REGEX = "^[\\u0000-\\uFFFF]*$";


// 1.校验内容是否为unicode编码
if (searchGetReq.getQuery().matches(UNICODE_REGEX)){
			// 2.将unicode编码 转为可读的字符串
            String tempQuery=emojiConverterUnicodeStr(searchGetReq.getQuery());
            if (StringUtils.isNotBlank(tempQuery)){
                // 3.将带有表情的字符转换为表情编码(存入数据库)
                queryContent=emojiConverterToAlias(tempQuery);
            }
        }else {
            queryContent=searchGetReq.getQuery();
        }
	   // 4.将内容存入数据库
	   searchRecordMapper.insert(queryContent);
        
    // 将表情编码转换成可读的表情字符
    public static String emojiConverterUnicodeStr(String emojiStr){
        return emojiConverter.toUnicode(emojiStr);
    }

    // 将带有表情的字符转换为表情编码(存入数据库)
    public static String emojiConverterToAlias(String str){
        return emojiConverter.toAlias(str);

    }

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1065501.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

TikTok+KOL:打造品牌种草的完美组合

随着社交媒体的崛起,品牌推广已经进入了全新的时代。在这个数字时代,消费者不再仅仅关注产品的质量和功能,他们也关注品牌的故事,情感共鸣以及社交影响力。 因此,品牌种草已经成为品牌营销策略中的一环,而…

1.4 系统环境变量

前言: **1.4 系统环境变量** --- **主要内容**: - **系统环境变量的定义**: 系统环境变量是在计算机操作系统中定义的一系列变量。这些变量是全局的,可以被操作系统上的所有应用程序所使用。 - **Java中的环境变量**: - 当学习和使用Java时&am…

[计算机入门] Windows附件程序介绍(轻松使用)

3.15 Windows附件程序介绍(轻松使用) 3.15.1 讲述人 Windows系统中的讲述人(Narrator)是一项辅助功能,旨在帮助具有视觉障碍或阅读困难的用户。讲述人可以读出屏幕上的文本和其他内容,同时提供导航和操作指导。 以下是讲述人程序…

算法通关村第16关【黄金】| 滑动窗口与堆结合

思路:求最大值和前k个最大值通常就要考虑使用堆 一般想法是堆的根结点保存当前窗口最大值,循环加入元素,怎么判断根结点是不是在窗口内呢 那就是还需要保存元素对应的下标,当根结点的下标在窗口外(一定会在最左侧&am…

亚马逊计划向开创性的人工智能初创公司Anthropic投资高达4亿美元

原创 | 文 BFT机器人 在一项巨大而突破性的举措中,亚马逊公布了向人工智能初创公司Anthropic投资高达4亿美元的计划,其愿景是创建更易于理解和可控的人工智能系统。此次合作标志着亚马逊打算在人工智能领域率先取得进步,巩固其在技术领域的地…

gitee 创建仓库 git 连接

文章目录 gitee 创建仓库 & git 连接gitee 创建仓库git 可视化工具使用 gitee 创建仓库 & git 连接 gitee 创建仓库 gitee 官网:工作台 - Gitee.com 先注册、登录账号 点击右上角 号,新建仓库 填写仓库名称,然后创建 选择你所在…

1.5 JAVA程序运行的机制

**1.5 Java程序的运行机制** --- **简介:** Java程序的运行涉及两个主要步骤:编译和运行。这种机制确保了Java的跨平台特性。 **主要内容:** 1. **Java程序的执行过程**: - **编译**:首先,扩展名为.jav…

VMware Horizon 8 运维系列(二)win10设置共享桌面图标

前言 在win10模板上用管理员帐号安装好软件之后,有的软件快捷图标不会出现在桌面上,有的即使有在桌面上出现,但是当发布云桌面池后,客户端登录的都是不同的域用户,当不同的用户登录系统的时候,很多软件快捷…

【数据库——MySQL】(16)游标和触发器习题及讲解

目录 1. 题目1.1 游标1.2 触发器 2. 解答2.1 游标2.2 触发器 1. 题目 1.1 游标 创建存储过程,利用游标依次显示某部门的所有员工的实际收入。(分别用使用 计数器 来循环和使用 标志变量 来控制循环两种方法实现) 创建存储过程,将某部门的员工工资按工作…

Pr音乐鼓点节拍插件BeatEdit出现不能标点问题如何解决?

BeatEdit是一款专业的PR卡点自动剪辑插件工具。BeatEdit最新版内置采集、剪辑、调色、美化音频、字幕添加、输出、DVD刻录等功能,还支持检测音乐节拍、生成时间线标记等操作。通过BeatEdit版软件用户只需选择素材就可以自己剪辑,多用于进行鬼畜视频制作。…

MS31703H 桥栅极驱动控制器,可P2P替代TI的DRV8703

MS31703NA 是一款小型单通道 H 桥栅极驱动 器。它使用四个外部 N 通道 MOSFET ,驱动一个双 向刷式直流电机。 PH/EN 、独立半桥或 PWM 允许轻松连接到控制 器电路。内部传感放大器提供可调的电流控制。集 成的电荷泵可提供 100% 占空比,而…

docker搭建Jenkins及基本使用

1. 搭建 查询镜像 docker search jenkins下载镜像 docker pull jenkins/jenkins启动容器 #创建文件夹 mkdir -p /home/jenkins_home #权限 chmod 777 /home/jenkins_home #启动Jenkins docker run -d -uroot -p 9095:8080 -p 50000:50000 --name jenkins -v /home/jenkins_home…

基于FPGA设计的低成本四通道 1GSPS 示波器设计资料

完整设计资料下载链接 https://download.csdn.net/download/tianqiquan/88253962 该项目的目标是设计和构建一个PC 连接替代方案,以替代低成本台式 1000 系列示波器,在性能和价格上都具有竞争力。该项目必须达到的规格是四个通道至少 100MHz&#xff0c…

Linux网络配置解析:连接世界的关键步骤

1.IP预备知识 IP最重要的信息包含:IP地址DNS网关 以下以IPV4为例说明: 11000000.10101000.00000000.00000001/24 192.168.0.1/24IP地址一般包含32位二进制地址和子网掩码 子网掩码全1位置对应的就是IP地址的网络号,全0位置对应的就是具体…

【Spatial-Temporal Action Localization(五)】论文阅读2020年

文章目录 1. Actions as Moving Points摘要和结论引言:针对痛点和贡献模型框架实验 1. Actions as Moving Points Actions as Moving Points (ECCV 2020) 摘要和结论 MovingCenter Detector (MOCdetector) 通过将动作实例视为移动点的轨迹。通过三个分支生成 tub…

混合表示人体的论文

0、致敬Xia Weihao 整理了数字人方面的重要论文和链接 网址如下: GitHub - weihaox/awesome-digital-human: A collection of resources on digital human including clothed people digitalization, virtual try-on, and other related directions.A collection …

继电器测试的应用场景和行业有哪些?

继电器是一种常见的电气元件,用于控制电路的开关和保护设备,它在许多行业和应用场景中发挥着重要的作用。继电器在电力系统中用于保护和控制电力设备,如发电机、变压器、电缆和线路。继电器测试可以确保继电器的准确性和可靠性,以…

起重机笔记 - 进阶篇(编辑中...)

1.双速葫芦 起重机在实际使用过程中,要兼顾效率和最大载重这两个因素,所以,起重机厂商会推出双速葫芦。双速葫芦的变速比,10吨的级别,最高可以达到1:10甚至更靠上。大功率的低速档用于提升高载荷负重,高速…

米小樽MiMe三店同开,应时手作的高品质米乳饮品新体验

米小樽MiMe于美丽的鹭岛厦门正式试营业。这一次的布局不可谓不大,三家门店:莲花北路、湾悦城、西堤,厦门三地同步开启,致力于为消费者带来崭新的健康饮品体验,开启潮流的「饮养」生活方式。 清新惬意的门店设计&#x…

【Overload游戏引擎分析】编辑器对象鼠标拾取原理

Overload的场景视图区有拾取鼠标功能,单击拾取物体后会显示在Inspector面板中。本文来分析鼠标拾取这个功能背后的原理。 一、OpenGL的FrameBuffer 实现鼠标拾取常用的方式有两种:渲染id到纹理、光线投射求交。Overload使用的是渲染id到纹理&#xff0c…