• Springboot整合ClickHouse


    一、快速开始
    1、添加依赖
    <dependency>
        <groupId>ru.yandex.clickhousegroupId>
        <artifactId>clickhouse-jdbcartifactId>
        <version>0.3.1-patchversion>
    dependency>
    <dependency>
        <groupId>com.alibabagroupId>
        <artifactId>druidartifactId>
        <version>1.2.6version>
    dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    2、添加配置类
    spring:
      datasource:
        type: com.alibaba.druid.pool.DruidDataSource
        click:
          driverClassName: ru.yandex.clickhouse.ClickHouseDriver
          url: jdbc:clickhouse://127.0.0.1:8123/dbname
          username: username
          password: 123456
          initialSize: 10
          maxActive: 100
          minIdle: 10
          maxWait: 6000
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    3、添加配置类
    @Data
    @Component
    @ConfigurationProperties(prefix = "spring.datasource.click")
    public class JdbcParamConfig {
        private String driverClassName ;
        private String url ;
        private Integer initialSize ;
        private Integer maxActive ;
        private Integer minIdle ;
        private Integer maxWait ;
        private String username;
        private String password;
    }
    
    @Configuration
    public class DruidConfig {
     
        @Resource
        private JdbcParamConfig jdbcParamConfig ;
     
        @Bean
        public DataSource dataSource() {
            DruidDataSource datasource = new DruidDataSource();
            datasource.setUrl(jdbcParamConfig.getUrl());
            datasource.setDriverClassName(jdbcParamConfig.getDriverClassName());
            datasource.setInitialSize(jdbcParamConfig.getInitialSize());
            datasource.setMinIdle(jdbcParamConfig.getMinIdle());
            datasource.setMaxActive(jdbcParamConfig.getMaxActive());
            datasource.setMaxWait(jdbcParamConfig.getMaxWait());
            datasource.setUsername(jdbcParamConfig.getUsername());
            datasource.setPassword(jdbcParamConfig.getPassword());
            return datasource;
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    实体类和业务实现
    @Data
    public class UserInfo implements Serializable {
        private static final long serialVersionUID = 1L;
        private int id;
        private String userName;
        private String passWord;
        private String phone;
        private String email;
        private String createDay;
    }
    
    @Repository
    public interface UserInfoMapper extends BaseMapper<UserInfo> {
        // 写入数据
        void saveData (UserInfo userInfo) ;
        // ID 查询
        UserInfo selectById (@Param("id") Integer id) ;
        // 查询全部
        List<UserInfo> selectList () ;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
  • 相关阅读:
    【Linux】vi命令使用详解(vim编辑器)
    spring-security-oauth2之WebSecurityConfigurerAdapter浅析
    第12章 软件测试基础 12.1-软件测试 12.2-验证与确认 12.3-软件缺陷
    Docker主要命令
    比Let‘s Encrypt更简单更齐全的免费证书申请教程
    超声波清洗机怎么挑选好坏?四大热度火爆的清洗机速速入手
    leetcode6. Z 字形变换python_字符串
    单链表的创建定义
    Java Web——JavaScript运算符与流程语句
    智慧园区软件平台设计方案Word(1129页)
  • 原文地址:https://blog.csdn.net/QingChunBuSanChang/article/details/132596916