Java 驱动连接 OceanBase 数据库

本文介绍了 Java 如何使用 OceanBase Connector/J 驱动连接并使用 OceanBase 数据库。

前提条件

  • 确保设置了基本的数据库开发环境。

  • 确保计算机上的 Java 环境为 Java JDK 8 版本。

  • 获取 OceanBase Connector/J 驱动程序。请在 OceanBase 官方网站的 资源 -> 下载中心 -> 公有云 -> 中间件 下的 OceanBase JDBC 驱动程序 中单击对应的版本,登录后自助下载 OceanBase Connector/J 驱动程序。

Java 驱动连接 OceanBase 数据库

步骤一:获取数据库连接参数

参考 获取连接参数 文档,获取相应的租户连接参数,例如:

$ obclient -hxxx.xxx.xxx.xxx -P3306 -u a**** -p******

数据库连接参数包含了访问数据库所需的参数信息,在验证示例代码前,可通过数据库连接参数验证登录数据库,保证信息正确。

参数说明:

  • -h:OceanBase 数据库连接的域名。

  • -P:OceanBase 数据库连接端口,Oracle 模式租户默认是 1521。

  • -u:租户的连接账号。

  • -p:账号密码。

步骤二:安装 OceanBase Connector/J 驱动

根据下载的实际文件版本,将 OceanBase Connector/J 的 JAR 包解压后放入本地 /usr/share/java 路径中,

$ mv ./oceanbase-client-{version}.jar /usr/share/java

然后设置临时环境变量。

$ export CLASSPATH=/usr/share/java/oceanbase-client-{version}.jar:$CLASSPATH

步骤三:编写示例代码

编写 Java 示例文件 Test.java

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.ResultSet;
import java.sql.Statement;

public class Test {
    public static void main(String[] args) {
        try {

            Class.forName("com.oceanbase.jdbc.Driver");
            Connection connection = DriverManager.getConnection("jdbc:oceanbase://xxx.xxx.xxx.xxx:3306/?pool=false&user=a****&password=******");
            System.out.println(connection.getAutoCommit());
            Statement sm = connection.createStatement();
            //新建表 t_meta_form
            sm.executeUpdate("CREATE TABLE t_meta_form (name varchar(36) , id int)");
            //插入数据
            sm.executeUpdate("insert into t_meta_form values ('an','1')");
            //查询数据,并输出结果
            ResultSet rs = sm.executeQuery("select * from t_meta_form");
            while (rs.next()) {
                String name = rs.getString("name");
                String id = rs.getString("id");
                System.out.println(name + ','+ id);
            }
            //删除表
            sm.executeUpdate("drop table t_meta_form");
        }catch (SQLException ex) {
            System.out.println("error!");
            ex.printStackTrace() ;
        }catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
}

修改代码中的数据库连接参数。参考如下字段,对应的值,则取自步骤一获取的数据库连接参数。

  • url:取自 -h -P 参数,jdbc:oceanbase://IP:port/?pool=falseOceanBase 数据库连接的域名以及端口号。Oracle 模式租户默认端口号为 1521。

  • user:取自 -u 参数,连接租户的账号。

  • password:取自 -p 参数,账号密码。

步骤四:执行示例

  1. 代码编辑完成后,可以通过如下命令进行编译。

    $ javac Test.java
  2. 编译完成后,运行代码。

    $ java Test
  3. 获得如下结果,说明数据库连接成功,示例语句正确执行。

    true
    an,1