openGauss数据库JDBC环境连接配置(Eclipse)

本文档详细介绍了如何在Windows10环境下,使用eclipse2020-09进行openGauss2.0.0数据库的JDBC连接配置。包括JDK11的安装、JDBC驱动的下载与加载,以及Java代码的编写与运行,通过执行SQL操作验证了连接的正确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.测试环境

客户端系统: Windows 10

客户端软件: eclipse 2020-09 

Server操作系统:openEuler 20.03 64bit with ARM

数据库版本: openGauss 2.0.0 

2.准备

2.1 PC端安装配置JDK11 

DOS窗口输入“java -version”,查看JDK版本,确认为JDK11版本。如果未安装JDK,请

从官方网站下载安装包并安装。

根据如下步骤配置系统环境变量:

a. 右键单击“我的电脑“,选择“属性“。

b. 在“系统“页面左侧导航栏单击“高级系统设置“。

c. 在“系统属性“页面,“高级“页签上单击“环境变量“。

d. 在“环境变量“页面上,“系统变量“区域单击“新建“或“编辑“配置系统变量。

2.2 下载JDBC驱动并解压

下载地址:https://opengauss.obs.cn-south-1.myhuaweicloud.com/2.0.0/x86/openGauss-2.0.0-JDBC.tar.gz

3 进行eclipse配置

启动eclipse,新建工程并添加JDBC驱动

9881adbdf7564a4b9153ac8dba0edcdf.png

Project name: openGauss-JDBC; JRE: JavaSE-11

738e1d55ea7a486ba67c00ed24ed9702.png

 不需要创建“Don’t Create”

90244183466049dc804fb36453dbec8b.png

创建一个lib目录在openGauss-JDBC项目下

200f2534c058435e8b69becc70c1ee4e.png

 把jdbc驱动拷贝到lib下边

b268d055408f493cb1bf29eee9642826.png

 d0a2937cf520454499897223017d26d0.png

 加载jdbc驱动

40bc902c6fb14ceba298feb115569c1a.png

 “Add JARs”

498b90fd3d8b4c158cf7948cad4da015.png

 85bfcb135f7a4e5cad9bb78c6eba31b8.png

 在“Libraries”下,选中需要的postgresql.jar文件,然后“Apply and Close”

e06854a910404227b6745e3446931048.png

 Jdbc jar已经被正确加载,在“Referenced Libraries”下

bc269767292c4d56a7ac65fafb615760.png

 创建“Java Class”

04a3a10ea2dc4f55bd96eebb42ef7a7b.png

 d8fb3fb8b1d44d19a2ccaeb7f9545195.png

 拷贝准备的代码到java类中

aeba770cba87422a9970855ac091c994.png

package gaussjdbc;

//ogtest.java
//演示基于JDBC开发的主要步骤,会涉及创建数据库、创建表、插入数据等。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.CallableStatement;

public class Gaussjdbc {

//创建数据库连接。
public static Connection GetConnection(String username, String passwd) {
String driver = "org.postgresql.Driver";
String sourceURL = "jdbc:postgresql://122.9.34.186:26000/db_tpcc";
Connection conn = null;
try {
  //加载数据库驱动。
  Class.forName(driver).newInstance();
} 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;
};

//执行普通SQL语句,创建customer_t1表。
public static void CreateTable(Connection conn) {
Statement stmt = null;
try {
  stmt = conn.createStatement();

  //执行普通SQL语句。
  int rc = stmt
      .executeUpdate("CREATE TABLE customer_t1(c_customer_sk INTEGER, c_customer_name VARCHAR(32));");

  stmt.close();
} catch (SQLException e) {
  if (stmt != null) {
    try {
      stmt.close();
    } catch (SQLException e1) {
      e1.printStackTrace();
    }
  }
  e.printStackTrace();
}
}

//执行预处理语句,批量插入数据。
public static void BatchInsertData(Connection conn) {
PreparedStatement pst = null;

try {
  //生成预处理语句。
  pst = conn.prepareStatement("INSERT INTO customer_t1 VALUES (?,?)");
  for (int i = 0; i < 3; i++) {
    //添加参数。
    pst.setInt(1, i);
    pst.setString(2, "data " + i);
    pst.addBatch();
  }
  //执行批处理。
  pst.executeBatch();
  pst.close();
} catch (SQLException e) {
  if (pst != null) {
    try {
      pst.close();
    } catch (SQLException e1) {
    e1.printStackTrace();
    }
  }
  e.printStackTrace();
}
}

//执行预编译语句,更新数据。
public static void ExecPreparedSQL(Connection conn) {
PreparedStatement pstmt = null;
try {
  pstmt = conn
      .prepareStatement("UPDATE customer_t1 SET c_customer_name = ? WHERE c_customer_sk = 1");
  pstmt.setString(1, "new Data");
  int rowcount = pstmt.executeUpdate();
  pstmt.close();
} catch (SQLException e) {
  if (pstmt != null) {
    try {
      pstmt.close();
    } catch (SQLException e1) {
      e1.printStackTrace();
    }
  }
  e.printStackTrace();
 }
}



/**
* 主程序,逐步调用各静态方法。
* @param args
*/
public static void main(String[] args) {
//创建数据库连接。
Connection conn = GetConnection("joe", "Bigdata@123");

//创建表。
CreateTable(conn);

//批插数据。
BatchInsertData(conn);

//执行预编译语句,更新数据。
ExecPreparedSQL(conn);

//关闭数据库连接。
try {
  conn.close();
} catch (SQLException e) {
  e.printStackTrace();
}
}
}

 运行java类“Run as -->java application”

07c643123234495fb8843675446c10ad.png

测试示例代码&检查运行结果

-- 检查客户端运行结果

--检查数据库数据变化

代码成功运行,且数据库数据变更正常,即连接环境配置完毕。

 6df710e04fb0413b9dd59f6fd364f299.png

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Gauss松鼠会

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值