java greenplum_接口篇 – Java连接Greenplum
Java作为当前使用最普遍的开发语言,通过JDBC的方式连接Greenplum数据库。目前有两种JDBC连接包可以实现连接:一种是通过PostgreSQL的接口库连接,另一种就是官方partner提供的连接库(greenplum.jar),第二种专门针对Greenplum进行了优化,性能上稍优,下面针对这两种方式进行详细的介绍。
开源PostgreSQL JDBC连接Greenplum
首先需要到PostgreSQL的官网上下载与JDK版本对应的JDBC驱动。我这里下载的是与JDK 1.8对应的最新版本jar包:postgresql-42.2.9.jar。
然后将jar包加载到对应的项目中,在如下代码中,最主要的是驱动名称和连接URL地址。
Class.forName("org.postgresql.Driver");
c = DriverManager.getConnection("jdbc:postgresql://10.211.55.6:5432/postgres", "gpadmin1", "");
一个采用PG JDBC的建表操作示例
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class PostgreSQLJDBC {
public static void main(String args[]) {
Connection c = null;
Statement stmt = null;
try {
Class.forName("org.postgresql.Driver");
c = DriverManager.getConnection("jdbc:postgresql://10.211.55.6:5432/postgres", "gpadmin1", "");
c.setAutoCommit(false);
System.out.println("Opened database successfully");
stmt = c.createStatement();
String sql = "CREATE TABLE STUDENTS " +
"(ID TEXT PRIMARY KEY NOT NULL ," +
" NAME TEXT NOT NULL, " +
" SEX TEXT NOT NULL, " +
" AGE TEXT NOT NULL)";
stmt.executeUpdate(sql);
System.out.println("Table created successfully");
stmt.close();
c.commit();
c.close();
} catch (Exception e) {
System.err.println(e.getClass().getName() + ": " + e.getMessage());
System.exit(0);
}
}
}
官方JDBC连接Greenplum
官方JDBC连接方式与上面操作步骤基本一致,首先需要到Pivotal的官网上下载与Greenplum版本对应的JDBC驱动。官方的驱动目前支持到JDK 8,JDBC功能支持到4.0版本。下载解压后的驱动名称有点长:PROGRESS_DATADIRECT_JDBC_DRIVER_PIVOTAL_GREENPLUM_5.1.4.000275.jar,我通常习惯将它改为:greenplum.jar,直接mv修改,方便后期维护jar包方便。
接下来也是将jar包加载到对应的项目中,在如下代码中,注意此时的驱动名称和连接URL地址与之前的PG驱动可不一样了。
Class.forName("com.pivotal.jdbc.GreenplumDriver");
c = DriverManager.getConnection("jdbc:pivotal:greenplum://10.211.55.6:5432;;DatabaseName=postgres", "gpadmin1", "");
一个采用GP JDBC的建表操作示例
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class GreenplumJDBC {
public static void main(String args[]) {
Connection c = null;
Statement stmt = null;
try {
Class.forName("com.pivotal.jdbc.GreenplumDriver");
c = DriverManager.getConnection("jdbc:pivotal:greenplum://10.211.55.6:5432;;DatabaseName=postgres", "gpadmin1", "");
c.setAutoCommit(false);
System.out.println("Opened database successfully");
stmt = c.createStatement();
String sql = "CREATE TABLE STUDENTS " +
"(ID TEXT PRIMARY KEY NOT NULL ," +
" NAME TEXT NOT NULL, " +
" SEX TEXT NOT NULL, " +
" AGE TEXT NOT NULL)";
stmt.executeUpdate(sql);
System.out.println("Table created successfully");
stmt.close();
c.commit();
c.close();
} catch (Exception e) {
System.err.println(e.getClass().getName() + ": " + e.getMessage());
System.exit(0);
}
}
}
注意:如果要在同一个数据库中重复创建表,会报错:表students已存在,注意这不是例子有错误。再次执行例子之前请从数据库中先删除表。
其他的增删改查操作参考JDBC的标准操作即可,如有问题请留言交流。
java greenplum_接口篇 – Java连接Greenplum相关推荐
- golang 接口_「实战」助力数据库开发之接口篇 - Golang 连接 Greenplum
Greenplum 作为一款强大的 HTAP 数据库,针对大多数流行语言都有相应的连接库.大部分均是与 PostgreSQL 采用相同的接口,但是也有部分接口是 Greenplum 专门优化后用于自身 ...
- java 抽象接口类,Java接口(interface)和Java抽象类(abstract class)的区别(详诉版)
1.概述 一个软件设计的好坏,我想很大程度上取决于它的整体架构,而这个整体架构其实就是你对整个宏观商业业务的抽象框架, 当代表业务逻辑的高层抽象层结构合理时,你底层的具体实现需要考虑的就仅仅是一些算法 ...
- 21天Java开发速成篇-Java从入门到大师01快速入门
Java 简介 win10安装 JDK 下载和安装 访问 oracle 官网https://www.oracle.com/ 建议下载解压版,下载完毕后,解压到一个没有中文和空格的目录即可 配置 Pat ...
- java基础提高篇--java的三大特性--多态
前两篇博文,分别介绍了java的面向对象的两大特性封装和继承,这一篇为介绍一下多态. 首先回顾一下什么是封装.继承. 封装就是隐藏信息,使用抽象的数据类型将数据以及基于数据的操作封装起来,使得外界不能 ...
- java自定义接口注解,Java自定义注解原理及实现
本章主要内容:1.了解注解原理,2,自定义注解(根据实际应用自定义注解打印每个接口的请求日志) 一, 了解注解原理 元注解 元注解的作用就是注解其他注解,一般我们使用自定义注解时,就需要用元注解来标注 ...
- java微信接口开发java SpringMVC mybatis 后台框架
获取[下载地址] QQ: 313596790 [免费支持更新] 支持三大数据库 mysql oracle sqlsever 更专业.更强悍.适合不同用户群体 [ 新录针对本系统的视频教 ...
- java基础学习篇——java学习目录与应用场景
两个方向--大数据开发.javaEE 技术拓展: 数据结构,常用算法,常用设计模式,JVM JAVAEE之路 javase--javaweb--javaee框架 (spring.springmvc.s ...
- java 继承 接口 练习,java:面向对象-抽象类、继承、接口结合练习
public class Demo5_Animal { public static void main(String[]args){ Cat_Test c=new Cat_Test("加菲猫 ...
- Java 9 接口私有方法
Java 9 接口私有方法 Java 9已经发布,并且已经发生了很多变化.今天我们将研究接口中Java 9私有方法的变化. 目录[ 隐藏 ] 1接口中的Java 9私有方法 1.1 Java 7接口 ...
最新文章
- 7 centos 源码安装samba_CentOS搭建WonderTrader开发环境及v0.5.4版本发布
- 离开互联网上岸1年后,我后悔了!重回大厂内卷
- 【Java】使用单向链表实现一个队列(Queue)
- 大数据分析与可视化报告会成功召开(附PPT下载)
- 用深度学习解决大规模文本分类问题
- JMeter入门教程(自己做测试了)
- linux光标美化包,使用 [ powerlevel10k ] 美化你的WSL (Linux)
- MTK 驱动 (70)---MTK Projiectconfig.mk文件详细解释
- safari windows版本_iPhone 和 Windows 协作的五个技巧
- QA:golang redis协议同时写入报错
- 只知道人工智能远远不够 下一件大事将是边缘计算!
- 决策支持系统复习资料
- CGROUP CFS 调度中的 period,burst 概念
- MS-DOS系统的操作命令
- alarm中断慢系统调用
- 计算机未来规划范文200,计算机职业规划书范文
- 墨尘目标检测4--yoyo3模型解析及训练自己的数据集
- U盘引导盘制作工具 Rufus 3.13.1730 正式版
- 游戏私服的配置与防御选择
- 天合航旅丨一周航旅资讯
热门文章
- office word由于宏安全,不能打开宏
- 一年半前端工作经验试水杭州:我是如何拿下网易、阿里和滴滴 offer 的
- 安卓开发学习日记第四天番外篇_用Kotlin炒冷饭——越炒越小_莫韵乐的欢乐笔记
- 微信小程序开发07 数据监控:善用数据驱动产品迭代
- gops —— Go 程序诊断分析工具
- 消费者行为分析模型,用AISAS模型拆解营销方式
- YouTube视频规格
- Ubuntu18.04_NVIDA驱动460_Cuda11.2_CuDNN8
- SQL Server研习录(29)——sql server 设置列自增长
- 小学计算机教师交流计划,小学教师信息技术个人研修计划书