ClickHouse Java JDBC连接

pom.xml文件

        <dependency>
            <groupId>com.clickhouse</groupId>
            <artifactId>clickhouse-jdbc</artifactId>
            <version>0.3.2-patch5</version>
        </dependency>

package com.tools;

import com.clickhouse.jdbc.ClickHouseDataSource;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Properties;

public class ClickHouse {
    public static void main(String[] args) throws SQLException {
        String url = "jdbc:clickhouse://172.16.131.56:8123/db_name";
        Properties properties = new Properties();
        // optionally set connection properties
        // properties.setProperty("clickhouse", "clickhouse");

        List<Map<String, Object>> list = new ArrayList<>();

        ClickHouseDataSource dataSource = new ClickHouseDataSource(url, properties);
        try (Connection conn = dataSource.getConnection();
             Statement stmt = conn.createStatement();
             ResultSet resultSet = stmt.executeQuery("select * from table_name_col")) {
            ResultSetMetaData resultsMetaData = resultSet.getMetaData();
            while (resultSet.next()) {
                Map<String, Object> row = new HashMap<>();
                for (int i = 1; i <= resultsMetaData.getColumnCount(); i++) {
                    row.put(
	                    resultsMetaData.getColumnName(i), 
	                    resultSet.getObject(resultsMetaData.getColumnName(i))
                    );
                }
                list.add(row);
            }
            System.out.println(list);
        }
    }
}


来源:https://blog.csdn.net/xushijie89/article/details/123072090

posted @ 2023-02-16 10:54  Lafite-1820  阅读(697)  评论(0)    收藏  举报