openGauss数据库JDBC环境连接配置的详细过程(Eclipse)


Posted in Java/Android onJune 01, 2022

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驱动并解压

下载地址:http://xiazai.3water.com/202206/yuanma/openGaussjdbc_jb51.rar

3 进行eclipse配置

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

openGauss数据库JDBC环境连接配置的详细过程(Eclipse)

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

openGauss数据库JDBC环境连接配置的详细过程(Eclipse)

不需要创建“Don’t Create”

openGauss数据库JDBC环境连接配置的详细过程(Eclipse)

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

openGauss数据库JDBC环境连接配置的详细过程(Eclipse)

把jdbc驱动拷贝到lib下边

openGauss数据库JDBC环境连接配置的详细过程(Eclipse)

openGauss数据库JDBC环境连接配置的详细过程(Eclipse)

加载jdbc驱动

openGauss数据库JDBC环境连接配置的详细过程(Eclipse)

“Add JARs”

openGauss数据库JDBC环境连接配置的详细过程(Eclipse)

openGauss数据库JDBC环境连接配置的详细过程(Eclipse)

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

openGauss数据库JDBC环境连接配置的详细过程(Eclipse)

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

openGauss数据库JDBC环境连接配置的详细过程(Eclipse)

创建“Java Class”

openGauss数据库JDBC环境连接配置的详细过程(Eclipse)

openGauss数据库JDBC环境连接配置的详细过程(Eclipse)

拷贝准备的代码到java类中

openGauss数据库JDBC环境连接配置的详细过程(Eclipse)

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”

openGauss数据库JDBC环境连接配置的详细过程(Eclipse)

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

-- 检查客户端运行结果

--检查数据库数据变化

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

openGauss数据库JDBC环境连接配置的详细过程(Eclipse)

到此这篇关于openGauss数据库JDBC环境连接配置(Eclipse)的文章就介绍到这了,更多相关openGauss数据库JDBC内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!


Tags in this post...

Java/Android 相关文章推荐
mybatis 解决从列名到属性名的自动映射失败问题
Jun 30 Java/Android
Java 泛型详解(超详细的java泛型方法解析)
Jul 02 Java/Android
用Java实现简单计算器功能
Jul 21 Java/Android
JVM钩子函数的使用场景详解
Aug 23 Java/Android
Java8中Stream的一些神操作
Nov 02 Java/Android
Java练习之潜艇小游戏的实现
Mar 16 Java/Android
Java 常见的限流算法详细分析并实现
Apr 07 Java/Android
Spring Data JPA框架的核心概念和Repository接口
Apr 28 Java/Android
MyBatis核心源码深度剖析SQL语句执行过程
May 20 Java/Android
一文搞懂Java中的注解和反射
Jun 21 Java/Android
springboot读取resources下文件的方式详解
Jun 21 Java/Android
volatile保证可见性及重排序方法
Aug 05 Java/Android
Java中生成微信小程序太阳码的实现方案
Jun 01 #Java/Android
Java处理延时任务的常用几种解决方案
Java实现添加条码或二维码到Word文档
Jun 01 #Java/Android
Spring IOC容器Bean的作用域及生命周期实例
May 30 #Java/Android
spring IOC容器的Bean管理XML自动装配过程
May 30 #Java/Android
利用正则表达式匹配浮点型数据
May 30 #Java/Android
JavaScript正则表达式实现注册信息校验功能
May 30 #Java/Android
You might like
自己动手做一个SQL解释器
2006/10/09 PHP
php使用str_replace实现输入框回车替换br的方法
2014/11/24 PHP
CentOS7.0下安装PHP5.6.30服务的教程详解
2018/09/29 PHP
PHP上传图片到数据库并显示的实例代码
2019/12/20 PHP
限制文本字节数js代码
2007/03/06 Javascript
JS加jquery简单实现标签元素的显示或隐藏
2013/09/23 Javascript
jQuery中hasClass()方法用法实例
2015/01/06 Javascript
Jquery实现顶部弹出框特效
2015/08/08 Javascript
深入理解ECMAScript的几个关键语句
2016/06/01 Javascript
基于Bootstrap的Metronic框架实现条码和二维码的生成及打印处理操作
2016/08/29 Javascript
AngularJs Modules详解及示例代码
2016/09/01 Javascript
Bootstrap如何创建表单
2016/10/21 Javascript
node.js调用Chrome浏览器打开链接地址的方法
2017/05/17 Javascript
深入理解Vue2.x的虚拟DOM diff原理
2017/09/27 Javascript
Vue-cli3.x + axios 跨域方案踩坑指北
2019/07/04 Javascript
[14:50]2018DOTA2亚洲邀请赛开幕式
2018/04/03 DOTA
python中stdout输出不缓存的设置方法
2014/05/29 Python
python编程开发之类型转换convert实例分析
2015/11/13 Python
python 爬取微信文章
2016/01/30 Python
分析Python中解析构建数据知识
2018/01/20 Python
Python OpenCV 直方图的计算与显示的方法示例
2018/02/08 Python
python中matplotlib的颜色及线条控制的示例
2018/03/16 Python
python如何读写json数据
2018/03/21 Python
Python实用库 PrettyTable 学习笔记
2019/08/06 Python
Django 后台带有字典的列表数据与页面js交互实例
2020/04/03 Python
Python实现一个优先级队列的方法
2020/07/31 Python
中国医药集团国药在线:国药网
2017/02/06 全球购物
金蝶的一道SQL笔试题
2012/12/18 面试题
25道Java面试题集合
2013/05/21 面试题
工程班组长岗位职责
2013/12/30 职场文书
食品行业求职人的自我评价
2014/01/19 职场文书
三问三解心得体会
2014/09/05 职场文书
社区学习党的群众路线教育实践活动心得体会
2014/11/03 职场文书
教师个人师德总结
2015/02/06 职场文书
2015年“七七卢沟桥事变”纪念活动总结
2015/03/24 职场文书
MySQL存储过程及语法详解
2022/08/05 MySQL