Conexão a uma instância padrão de HTAP por meio de JDBC
Você pode se conectar a uma instância de HTAP padrão por meio do JDBC.
Precauções
Atualmente, as instâncias de HTAP suportam apenas o conjunto de caracteres UTF-8.
Pré-requisitos
- Você está familiarizado com:
- Noções básicas de computação
- Java
- Conhecimento de JDBC
- Você baixou o driver JDBC oficial para MySQL ou MariaDB.
- Você criou uma instância de HTAP padrão.
- A seguinte dependência foi adicionada ao arquivo pom.xml.
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.47</version> </dependency> - Você pode usar o comando a seguir para se conectar a uma instância de HTAP por meio do JDBC:
jdbc:mysql://<instance_ip>:<instance_port>/<database_name>
Parâmetro
Descrição
<instance_ip>
Endereço IP do nó FE na instância de HTAP. Se um proxy estiver instalado, use o endereço IP do proxy.
<instance_port>
Porta da instância de HTAP. O valor padrão é 3306.
<database_name>
Nome do banco de dados usado para conectar-se à instância.
Código de exemplo
Exemplo de código (código Java para conexão com um banco de dados HTAP):
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.SQLException;
public class JDBCTest {
static final String IP = "*.*.*.*"; //IP address of the instance
static final String USER = "***"; //Username
static final String PASS = "***"; //Password
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
String url = "jdbc:mysql://" + IP + ":3306";
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(url, USER, PASS);
stmt = conn.createStatement();
String sql = "show databases;";
ResultSet rs = stmt.executeQuery(sql);
int columns = rs.getMetaData().getColumnCount();
for (int i = 1; i <= columns; i++) {
System.out.print(rs.getMetaData().getColumnName(i));
System.out.print("\t");
}
while (rs.next()) {
System.out.println();
for (int i = 1; i <= columns; i++) {
System.out.print(rs.getObject(i));
System.out.print("\t");
}
}
rs.close();
stmt.close();
conn.close();
} catch (SQLException se) {
se.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
} finally {
// release resource ....
}
}
}