Использование JDBC-драйвера для подключения JVM-based приложений к ADQM
Для подключения JVM-based приложения к базе данных ADQM можно использовать JDBC-драйвер.
Ниже приведен пример приложения Java, которое собирается с помощью Maven и взаимодействует с сервером ADQM через JDBC-драйвер. Исходный код приложения находится в файле <project_path>/src/main/java/io/arenadata/adqm/test/TestApp.java, а файл pom.xml с описанием структуры проекта — в корневой папке проекта <project_path>/pom.xml.
-
В файле pom.xml добавьте следующую зависимость, чтобы подключить JDBC-драйвер из центрального репозитория Maven:
<dependencies> <dependency> <groupId>com.clickhouse</groupId> <artifactId>clickhouse-jdbc</artifactId> <version>0.3.2</version> <classifier>all</classifier> <exclusions> <exclusion> <groupId>*</groupId> <artifactId>*</artifactId> </exclusion> </exclusions> </dependency> </dependencies>
-
Создайте основной класс приложения, используя следующий код:
package io.arenadata.adqm.test; import com.clickhouse.jdbc.*; import java.sql.*; import java.util.*; public class TestApp { private static Connection getConnection(String url) throws SQLException { return DriverManager.getConnection(url); } public static void main(String[] args) { String url = "jdbc:clickhouse://<IP>:8123/default"; try ( Connection connection = getConnection(url); Statement stmt = connection.createStatement(); ResultSet rs = stmt.executeQuery("SELECT * FROM <table_name> LIMIT 5")) { ResultSetMetaData rsMetaData = rs.getMetaData(); int columns = rsMetaData.getColumnCount(); while (rs.next()) { for (int c = 1; c <= columns; c++) { System.out.print(rsMetaData.getColumnName(c) + ":" + rs.getString(c) + (c < columns ? " | " : "\n")); } } } catch (SQLException e) { e.printStackTrace(); } } }
Этот код устанавливает соединение с сервером ADQM через DriverManager (от имени пользователя
default
без пароля) и выводит первые пять строк заданной таблицы базы данныхdefault
в выходной поток. Замените<IP>
на IP-адрес вашего сервера ADQM и вместо<table_name>
в строке запроса введите название таблицы, существующей в базе данныхdefault
на вашем сервере ADQM. -
Для пользователя
default
укажите из каких сетей разрешено подключение к ADQM (см. пример в статье Подключение к ADQM). -
Соберите и запустите проект. Пример вывода на экран:
a:1 | b:text1 | c:100 a:2 | b:text2 | c:200 a:3 | b:text3 | c:300