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

MogDB - JDBC链接数据库,并使用简单测试案例验证

原创 伊织鸟 2024-11-03
191

概述

本文通过简单的JAVA测试案例分别介绍Linux和Windows java环境的配置方法。

相关软件版本

软件名称 版本 说明
MogDB 5.0.8 MogDB数据库
java 2.3.9 官网提供的unixODBC源码版本
jdk 5.0.0.2 官网提供的mogdb plsqlodbc驱动
mogdbjdbc 4.8.5-39 GCC编译版本

测试步骤

Linux下配置java环境

1、安装java和jdk

yum install java-1.8.0-openjdk.x86_64 -y yum install java-1.8.0-openjdk-devel.x86_64 -y yum list java*
复制

图片.png

java -version javac -version
复制

图片.png

2、检查MogDB安装情况

su - omm gs_ctl query
复制

图片.png

3、上传mogdbjdbc
下载地址:https://www.mogdb.io/downloads/jdbc/all

mkdir -p /data/java/jar
cp mogdb-jdbc-5.0.0.9.mg.jar /data/java/jar
复制

4、配置jdbc环境变量

vi ~/.bashrc export CLASSPATH=/data/java/jar/mogdb-jdbc-5.0.0.9.mg.jar:$CLASSPATH ## 保存 source ~/.bashrc
复制

图片.png

5、编写java测试代码

vi /data/java/source/DB_oper.java ## 代码示例如下 //DB_oper.java //演示基于JDBC开发的数据库基础操作,包括链接数据库,创建表,批量插入数据,批量更新数据,call存储过程 import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.SQLException; import java.sql.Statement; import java.sql.CallableStatement; import java.sql.Types; public class DB_oper { //创建数据库连接。 public static Connection GetConnection(String username, String passwd) { String driver = "io.mogdb.Driver"; String sourceURL = "jdbc:mogdb://192.168.118.140:26000/testdb"; 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("ConnectionDB 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 if not exists customer_t1(c_customer_sk INTEGER, c_customer_name VARCHAR(32));"); stmt.close(); System.out.println("Create table succeed!"); } 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(); System.out.println("Batch insert succeed!"); } 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(); System.out.println("Batch update succeed!"); } catch (SQLException e) { if (pstmt != null) { try { pstmt.close(); } catch (SQLException e1) { e1.printStackTrace(); } } e.printStackTrace(); } } //执行存储过程。 //public static void ExecCallableSQL(Connection conn) { // CallableStatement cstmt = null; // try { //// 存储过程TESTPROC需提前创建。 // cstmt=conn.prepareCall("{? = CALL TESTPROC(?,?,?)}"); // cstmt.setInt(2, 50); // cstmt.setInt(1, 20); // cstmt.setInt(3, 90); // cstmt.registerOutParameter(4, Types.INTEGER); //注册out类型的参数,类型为整型。 // cstmt.execute(); // int out = cstmt.getInt(4); //获取out参数 // System.out.println("The CallableStatment TESTPROC returns:"+out); // cstmt.close(); // } catch (SQLException e) { // if (cstmt != null) { // try { // cstmt.close(); // } catch (SQLException e1) { // e1.printStackTrace(); // } // } // e.printStackTrace(); // } //} /** * 主程序,逐步调用各静态方法。 * @param args */ public static void main(String[] args) { //创建数据库连接。 Connection conn = GetConnection("moguser", "Mogdb@1234"); //创建表。 CreateTable(conn); //批插数据。 BatchInsertData(conn); //执行预编译语句,更新数据。 ExecPreparedSQL(conn); //执行存储过程。 //ExecCallableSQL(conn); //关闭数据库连接。 try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } System.out.println("Release DBconn succeed!"); } }
复制

6、编译并执行代码

cd /data/java/source javac DB_oper.java java DB_oper
复制

图片.png

Windows下配置java环境

1、下载并安装java 1.8版本
下载地址:https://www.oracle.com/java/technologies/downloads/#java8-windows
图片.png

2、配置环境变量:
“我的电脑” - “属性” - “高级系统设置” - “高级” - “环境变量”,按照安装目录配置环境变量。

## 环境变量: JAVA_HOME:C:\Program Files\Java\jdk1.8.0_311\ Path:.;%JAVA_HOME%\bin CLASSPATH:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;
复制

JAVA_HOME配置
图片.png

PATH配置
图片.png

CLASSPATH配置
图片.png

3、验证java环境配置有效
图片.png

4、准备JDBC驱动
下载地址:https://www.mogdb.io/downloads/jdbc/all
图片.png

5、安装IntelliJ IDEA 2024.1.4
(略)

6、IntelliJ IDEA配置加载驱动
“File” --> “Project Structure” --> “Project Settings” --> “Project”
图片.png

图片.png

图片.png

图片.png

7、建立测试代码
“src”——>“new”——>“java class:Mogdb_conn”
图片.png

## java代码: import java.sql.Connection; import java.sql.DriverManager; import java.util.Properties; public class Mogdb_conn { public static void main(String args[]) { Connection conn1 = getConnect("moguser","Mogdb@1234"); try { conn1.close(); System.out.println("Disconnect succeed!!"); }catch(Exception e){ e.printStackTrace(); } } //以下代码将获取数据库连接操作封装为一个接口,可通过给定用户名和密码来连接数据库。 public static Connection getConnect(String username, String passwd){ //驱动类 String driver = "io.mogdb.Driver"; //数据库连接描述符 String sourceURL = "jdbc:mogdb://192.168.118.140:26000/testdb"; 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; } }
复制

8、运行代码
图片.png

结果如下:
图片.png

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

评论