暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

使用JDBC连接openGauss数据库

原创 周波 云和恩墨 2022-09-28
3382

1.基于JDBC连接openGauss

1)准备java环境

  下载安装jdk1.8,我这里是jdk-16.0.1
配置环境变量:
  我的电脑——>属性——>高级系统设置——>环境变量
  系统环境变量:JAVA_HOME:D:\Program Files\Java\jdk-16.0.1
  Path:增加:%JAVA_HOME%\bin
  CLASSPATH:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;

打开控制台(win+r——>输入cmd),查看jdk版本:
image.png

2)在linux中下载openGauss jdbc驱动程序,并解压,或者直接在windows中下载解压,也是可以的:

[root@OG1 ~]# wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/2.1.0/x86/openGauss-2.1.0-JDBC.tar.gz
[root@OG1 ~]# tar -zxvf openGauss-2.1.0-JDBC.tar.gz 
postgresql.jar

#将jar包传送到windows宿主机
[root@OG1 ~]# sz postgresql.jar

3)配置集成开发环境IntelliJ IDEA :

创建一个项目:openGauss
image.png
点击Project structure:配置jdk环境和openGauss JDBC驱动:
配置jdk环境:
image.png
配置jdbc jar包:
image.png
依次点击Libraries——>+号——>java——>然后选择jar的存放位置,

4)配置客户端接入认证:

因为虚拟主机采用的是NAT模式上网,所以它与windows宿主机之间是通过VMnet8虚拟网卡进行通信的。此时VMnet8的IP地址为:10.0.0.1:
允许zb用户通过这个主机进行远程连接数据库test:

[omm@OG1 ~]$ gs_guc reload -N all -I all -h "host test zb 10.0.0.1/24 sha256"

5)连接数据库(不使用ssl方式连接)

在项目下创建一个测试类:右键src——>new——>java class:Jdbc_con

import java.sql.Connection;
import java.sql.DriverManager;
import java.util.Properties;

public class Jdbc_con {

    public static void main(String args[]) {
        Connection conn1 = getConnect("zb","Test@123");
        try {
            conn1.close();
            System.out.println("Disconnect succeed!!");
        }catch(Exception e){
            e.printStackTrace();
        }

    }
    //以下代码将获取数据库连接操作封装为一个接口,可通过给定用户名和密码来连接数据库。
    public static Connection getConnect(String username, String passwd){
        //驱动类
        String driver = "org.postgresql.Driver";
        //数据库连接描述符
        String sourceURL = "jdbc:postgresql://10.0.0.100:15400/test";
        Connection conn = null;
        try {
            //加载驱动
            Class.forName(driver);
        }
        catch(Exception e) {
            e.printStackTrace();
            return null;
        }
        try {
            //创建连接
            conn = DriverManager.getConnection(sourceURL, username, passwd);
            System.out.println("Connection succeed!");
        }
        catch (Exception e){
            e.printStackTrace();
            return null;
        }
        return conn;
    }

    // 以下代码将使用Properties对象作为参数建立连接
    public static Connection getConnectUseProp(String username, String passwd){
        //驱动类
        String driver = "org.postgresql.Driver";

        //数据库连接描述符
        String sourceURL = "jdbc:postgresql://10.0.0.100:15400/test?";
        Connection conn = null;
        Properties info = new Properties();

        try {
            //加载驱动
            Class.forName(driver);
        } catch(Exception e) {
            e.printStackTrace();
            return null;
        }

        try {
            info.setProperty("user",username);
            info.setProperty("password",passwd);
            //创建连接
            conn = DriverManager.getConnection(sourceURL, info);
            System.out.println("Connection succeed!");
        }catch (Exception e){
            e.printStackTrace();
            return null;
        }
        return conn;
    }
}

执行代码测试连接:
image.png
表示连接成功!!

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论