From e3ededf08e75c4335c464eee4b123c3d8c3f38ac Mon Sep 17 00:00:00 2001 From: wenshao Date: Tue, 30 Jan 2018 09:41:46 +0800 Subject: [PATCH] JdbcUtils support clickhouse. for issue #2294 --- src/main/java/com/alibaba/druid/util/JdbcConstants.java | 3 +++ src/main/java/com/alibaba/druid/util/JdbcUtils.java | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/src/main/java/com/alibaba/druid/util/JdbcConstants.java b/src/main/java/com/alibaba/druid/util/JdbcConstants.java index 9de33956b9..6d44a214d8 100644 --- a/src/main/java/com/alibaba/druid/util/JdbcConstants.java +++ b/src/main/java/com/alibaba/druid/util/JdbcConstants.java @@ -110,4 +110,7 @@ public interface JdbcConstants { String ELASTIC_SEARCH = "elastic_search"; String ELASTIC_SEARCH_DRIVER = "com.alibaba.xdriver.elastic.jdbc.ElasticDriver"; + + String CLICKHOUSE = "clickhouse"; + String CLICKHOUSE_DRIVER = "ru.yandex.clickhouse.ClickHouseDriver"; } diff --git a/src/main/java/com/alibaba/druid/util/JdbcUtils.java b/src/main/java/com/alibaba/druid/util/JdbcUtils.java index b0c122bd3a..ede039be5b 100644 --- a/src/main/java/com/alibaba/druid/util/JdbcUtils.java +++ b/src/main/java/com/alibaba/druid/util/JdbcUtils.java @@ -466,6 +466,8 @@ public final class JdbcUtils implements JdbcConstants { return JdbcConstants.KYLIN_DRIVER; } else if (rawUrl.startsWith("jdbc:elastic:")) { return JdbcConstants.ELASTIC_SEARCH_DRIVER; + } else if (rawUrl.startsWith("jdbc:clickhouse:")) { + return JdbcConstants.CLICKHOUSE_DRIVER; } else { throw new SQLException("unkow jdbc driver : " + rawUrl); } @@ -555,6 +557,8 @@ public final class JdbcUtils implements JdbcConstants { return PHOENIX; } else if (rawUrl.startsWith("jdbc:elastic:")) { return ELASTIC_SEARCH; + } else if (rawUrl.startsWith("jdbc:clickhouse:")) { + return CLICKHOUSE; } else { return null; }