美文网首页
mysql+springBoot支持存储表情

mysql+springBoot支持存储表情

作者: henry技术探索记录员 | 来源:发表于2019-03-12 11:15 被阅读0次

1. 数据库支持utf8mb4

    创建数据库时选择字符集:utf8mb4

2. 表支持utf8mb4

    ```
    DROP TABLE IF EXISTS `mytable`;
    CREATE TABLE `mytable` (
      `uid` bigint(20) NOT NULL, 
      
      PRIMARY KEY (`uid`) 
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
    ```

3. SpringBoot hibernate连接池的设置支持utf8mb4

    在配置文件**application-rds.properties**中添加一行:
    ```
    spring.datasource.connectionInitSqls=SET NAMES utf8mb4
    ```

    在**RdsConfiguration.java**中设置连接池的字符集:

    ```
    ...

    import javax.sql.DataSource;
    import java.util.Collections;
    import java.util.Properties;
    import java.util.StringTokenizer;

    @Configuration
    public class RdsConfiguration {

        ...

        @Value("${spring.datasource.connectionInitSqls}")
        private String connectionInitSqls;

        ...

        @Bean(name = "dbDataSource")
        @Qualifier(value = "dbDataSource")

        @Primary
        public DataSource dbDataSource() {
            return dataSource(dburl);
        }

        private DataSource dataSource(String url) {
            DruidDataSource druidDataSource = new DruidDataSource();
            druidDataSource.setUrl(url);
            druidDataSource.setUsername(username);
            druidDataSource.setPassword(password);
            druidDataSource.setInitialSize(initialSize);
            druidDataSource.setMinIdle(minIdle);
            druidDataSource.setMaxActive(maxActive);
            druidDataSource.setMaxWait(maxWait);
            druidDataSource.setTimeBetweenEvictionRunsMillis(timeBetweenEvictionRunsMillis);
            druidDataSource.setMinEvictableIdleTimeMillis(minEvictableIdleTimeMillis);
            druidDataSource.setMaxPoolPreparedStatementPerConnectionSize(maxPoolPreparedStatementPerConnectionSize);
            druidDataSource.setTestWhileIdle(testWhileIdle);
            druidDataSource.setTestOnBorrow(testOnBorrow);
            druidDataSource.setTestOnReturn(testOnReturn);
            druidDataSource.setPoolPreparedStatements(poolPreparedStatements);
            druidDataSource.setValidationQuery(validationQuery);
            //druidDataSource.setFilters(filters);

            // 支持表情
            StringTokenizer tokenizer = new StringTokenizer(connectionInitSqls, ";");
            druidDataSource.setConnectionInitSqls(Collections.list(tokenizer)); //重点设置该参数

            return druidDataSource;
        }

        ...

    ```

相关文章

  • mysql+springBoot支持存储表情

    1. 数据库支持utf8mb4 2. 表支持utf8mb4 3. SpringBoot hibernate连接池的...

  • 教你如何让数据库支持emoji表情符存储

    教你如何让数据库支持emoji表情符存储 一、教你如何让数据库支持emoji表情符存储 解决方式: 更换字符集ut...

  • MySQL支持存储emoji表情

    项目中,项目之前使用的utf8的编码集,但是项目测试过程中,发现需要支持emoji表情,所以考虑将utf8编码更改...

  • vue.js项目 评论留言模块支持表情包

    vue.js项目 评论留言模块支持表情包 需通过后台处理表情包:数据库存储字段,前端直接处理转换成表情。 页面结构...

  • Laravel支持emoji表情存储MySQL数据库

    由于需要实现emoji表情评论的功能,所以数据库需要支持emoji表情的存储,根据查询的资料最终实现了该功能,现将...

  • emoji表情存储

    近期做朋友圈功能的时候,需要支持emoji表情评论存储。有两种方式:1.修改mysql数据字符集;2.java过滤...

  • mysql存储表情

    1、服务器上my.cnf配置: 在[mysqld]模块里添加: character-set-client-hand...

  • iOS 表情支持

    iOS如果只是评价功能需要支持表情包,用UITextView提交评论就能快速的支持表情包显示。 移动端给服务器提交...

  • 支持emoji表情

    首先就是数据库、表、列,都需要是utf8mb4,重点说下,还需要把连接字符串修改, config.py文件中,把连...

  • 详解MySQL执行事务的语法和流程

    摘要:MySQL 提供了多种存储引擎来支持事务。 MySQL 提供了多种存储引擎来支持事务。支持事务的存储引擎有 ...

网友评论

      本文标题:mysql+springBoot支持存储表情

      本文链接:https://www.haomeiwen.com/subject/dzpvpqtx.html