JDBC连接openGauss数据库

JDBC(Java Database Connectivity,Java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问接口,应用程序可基于它操作数据。openGauss库提供了对JDBC 4.0特性的支持,需要使用JDK1.8版本编译程序代码,不支持JDBC桥接ODBC方式。

在linux服务器端源代码目录下执行build.sh,获得驱动jar包postgresql.jar,包位置在源代码目录下。从发布包中获取, 包名为openGauss-xxxx-操作系统版本号-64bit-Jdbc.tar.gz。

官方说驱动包与PostgreSQL保持兼容,其中类名、类结构与PostgreSQL驱动完全一致,曾经运行于PostgreSQL的应用程序可以直接移植到当前系统使用。在创建数据库连接之前,先加载数据库驱动类,openGauss jdbc的驱动为“com.huawei.opengauss.jdbc.Driver”,其中url前缀为“jdbc:opengauss”。

在连接数据库之前先要添加连接数据库的主机地址添加到pg_hba.conf(此文件在安装目录下的datanode文件夹下)中,格式如下所示:

host    all    all    127.0.0.1/32    sha256

里面 sourceURL   需要根据实际情况替换掉用户名、密码、IP 、端口。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
    
public class JdbcConn {
  public static void main(String[] args) {
        getConnect();
  }
  public static Connection getConnect() {
        String driver = "com.huawei.opengauss.jdbc.Driver";
        String sourceURL = "jdbc:opengauss://127.0.0.1:8080/test?user=myuser&password=myPassWord";
        Properties info = new Properties();
        Connection conn = null;
        try {
            Class.forName(driver);
        } catch (Exception var9) {
            var9.printStackTrace();
            return null;
        }
        try {
            conn = DriverManager.getConnection(sourceURL);
            System.out.println("连接成功!");
            return conn;
        } catch (Exception var8) {
            var8.printStackTrace();
            return null;
        }
    }
}

DriverManager.getConnection(String url, String user, String password);

此方法需要将用户名和密码作为变量输入。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
    
public class JdbcConn {
  public static void main(String[] args) {
        getConnect();
  }
 public static Connection getConnect() {
        String driver = "com.huawei.opengauss.jdbc.Driver";
        String sourceURL = "jdbc:opengauss://127.0.0.1:8080/test";
        String username="myuser";
        String passwd="myPassWord";
        Connection conn = null;
        try {
            Class.forName(driver);
        } catch (Exception var9) {
            var9.printStackTrace();
            return null;
        }
        try {
            conn = DriverManager.getConnection(sourceURL, username, passwd);
            System.out.println("连接成功!");
            return conn;
        } catch (Exception var8) {
            var8.printStackTrace();
            return null;
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值