java如何实现微信表情及特殊字符存入数据库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java如何实现微信表情及特殊字符存入数据库相关的知识,希望对你有一定的参考价值。

    表情,应该说的是图片表情,若不是图片表情就很好处理,直接和文本一起存入数据库。若是图片表情,也就是图片吧,可以使用二进制存数据库,也可以使用base64寸数据库,当然,最好别这样做,图片很大,对数据库压力也很大,存数据库没多大意义。

    再说一句,图片最好不要存数据库,一般都是传到服务器文件系统,或者cdn,上传成功后,返回图片链接地址,然后把链接地址存到数据库。

    如果用base64上传图片,最好上传后再服务器端转码成图片文件并存储到服务器,然后将base64数据替换成功那个图片文件的链接,再存数据库了。

    特殊字符,一般是需要转义之后才能存入数据库。

    至于如何转义,网上很全面,教程也很多,楼主可以多去查查,我就不赘述了。

参考技术A 统一转成base64存
取出来的时候再解开展示就妥妥的了
参考技术B 表情大部分都是“/”转意的,一般情况下UTF-8对字符的支持比较全 参考技术C 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。 参考技术D 用encode试试

怎么将emoji表情存入mysql

参考技术A
mysql
5.5.3
开始,mysql
支持一种
utf8mb4
的字符集,这个字符集能够支持
4
字节的
utf8
编码的字符。
utf8mb4
字符集能够完美地向下兼容
utf8
字符串。在数据存储方面,当一个普通中文字符存入数据库时仍然占用
3
个字节,在存入一个
unified
emoji
表情的时候,它会自动占用
4
个字节。所以在输入输出时都不会存在乱码的问题了。由于
utf8mb4

utf8
的超集,从
utf8
升级到
utf8mb4
不会有任何问题,直接升级即可;如果从别的字符集如
gb2312
或者
gbk
转化而来,一定要先备份数据库。然后,修改
mysql
的配置文件
/etc/my.cnf,修改连接默认字符集为
utf8mb4
,然后在连接数据库以后首先执行一句
sql:
set
names
utf8mb4;。
1.
修改my.cnf

my.ini
[mysqld]
character-set-server=utf8mb4
[mysql]
default-character-set=utf8mb4
修改后重启mysql
登陆mysql,
show
variables
like
'character%';
可以查看编码是否已经修改成功。
2、修改数据库和数据表为相应的
utf8mb4
格式。
alter
table
table_name
convert
to
character
set
utf8mb4
collate
utf8mb4_bin;
3、在代码中,连接数据库成功后,执行
"set
names
utf8mb4"

以上是关于java如何实现微信表情及特殊字符存入数据库的主要内容,如果未能解决你的问题,请参考以下文章

php + mysql 存入表情 如何转义emoji表情,让它可以存入utf8的数据库

怎么将emoji表情存入mysql

文章收集

如何转义emoji表情,让它可以存入utf8的数据库

输入法输入表情实际输入的编码

(DELPHI)已经存入SQLSERVER中的图片数据(image字段)太大,怎么直接在数据库中压缩?或怎么用程序实现