Selaa lähdekoodia

数据库添加clickhouse类型 (#2534)

* 数据库添加clickhouse类型

* fix clickhouse DbType

Co-authored-by: hehan.wang <hehan.wang@happyelements.com>
davidwang 5 vuotta sitten
vanhempi
commit
c9d65d2105

+ 5 - 0
mybatis-plus-annotation/src/main/java/com/baomidou/mybatisplus/annotation/DbType.java

@@ -96,6 +96,11 @@ public enum DbType {
      */
     GAUSS("zenith", "Gauss 数据库", "com.baomidou.mybatisplus.extension.plugins.pagination.dialects.GaussDialect"),
 
+    /**
+     * clickhouse
+     */
+    CLICKHOUSE("clickhouse", "clickhouse 数据库", "com.baomidou.mybatisplus.extension.plugins.pagination.dialects.ClickhouseDialect"),
+
     /**
      * GBase
      */

+ 25 - 0
mybatis-plus-extension/src/main/java/com/baomidou/mybatisplus/extension/plugins/pagination/dialects/ClickhouseDialect.java

@@ -0,0 +1,25 @@
+/*
+ * Copyright (c) 2011-2020, baomidou (jobob@qq.com).
+ * <p>
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ * <p>
+ * https://www.apache.org/licenses/LICENSE-2.0
+ * <p>
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package com.baomidou.mybatisplus.extension.plugins.pagination.dialects;
+
+/**
+ * clickhouse数据库分页语句组装实现
+ *
+ * @author hehan.wang
+ * @since 2020-05-29
+ */
+public class ClickhouseDialect extends MySqlDialect {
+}

+ 1 - 0
mybatis-plus-extension/src/main/java/com/baomidou/mybatisplus/extension/plugins/pagination/dialects/DialectRegistry.java

@@ -48,6 +48,7 @@ public class DialectRegistry {
         dialect_enum_map.put(DbType.KINGBASE_ES, new KingbaseDialect());
         dialect_enum_map.put(DbType.PHOENIX, new PhoenixDialect());
         dialect_enum_map.put(DbType.GAUSS, new GaussDialect());
+        dialect_enum_map.put(DbType.CLICKHOUSE, new ClickhouseDialect());
     }
 
     public IDialect getDialect(DbType dbType) {

+ 1 - 0
mybatis-plus-extension/src/test/java/com/baomidou/mybatisplus/extension/plugins/pagination/dialects/DialectRegistryTest.java

@@ -26,6 +26,7 @@ class DialectRegistryTest {
         Assertions.assertEquals(dialectRegistry.getDialect(DbType.KINGBASE_ES).getClass(), KingbaseDialect.class);
         Assertions.assertEquals(dialectRegistry.getDialect(DbType.PHOENIX).getClass(), PhoenixDialect.class);
         Assertions.assertEquals(dialectRegistry.getDialect(DbType.GAUSS).getClass(), GaussDialect.class);
+        Assertions.assertEquals(dialectRegistry.getDialect(DbType.CLICKHOUSE).getClass(), ClickhouseDialect.class);
         Assertions.assertNull(dialectRegistry.getDialect(DbType.OTHER));
     }