Oracle开发jdbc thin与 oci 连接方式 区别


theme: smartblue

一、jdbc thin

1.1 定义

thin就是纯粹用Java写的ORACLE数据库访问接口

瘦客户端的连接方式,采用这种连接方式不需要安装oracle客户端,只要求包含jdbc驱动的jar包就行。

1.2 实现

参考: JDBC连接Oracle数据库(一)-CSDN博客

``` import java.sql.Connection; import java.sql.DriverManager;

public class Main {

public static void main(String[] args) {
      Connection conn=null;

      try {
        String url="jdbc:oracle:thin:@127.0.0.1:1521:orcl";
          String user="hr";
          String password="xyy123";

          Class.forName("oracle.jdbc.driver.OracleDriver");//加载数据驱动
          conn = DriverManager.getConnection(url, user, password);// 连接数据库

    } catch (ClassNotFoundException e) {
        e.printStackTrace();
        System.out.println("加载数据库驱动失败");
    }catch(Exception e){
        e.printStackTrace();
        System.out.println("连接数据库失败");
    }

}

}

```

二、jdbc oci

2.1 定义

oci是一种胖客户端的连接方式,采用这种连接方式需要安装oracle客户端。

oci是Oracle Call Interface的首字母缩写,是ORACLE公司提供了访问接口。

使用Java来调用本机的Oracle客户端,然后再访问数据库,优点是速度 快,但是需要安装和配置数据库。

## 2.2 实现

参考: java使用oci方式连接oracle_ocijdbc23 csdn-CSDN博客

``` import java.sql.Connection; import java.sql.DriverManager;

public class Main {

public static void main(String[] args) {
      Connection conn=null;

      try {
        String url="jdbc:oracle:oci:@127.0.0.1:1521:orcl";
          String user="hr";
          String password="xyy123";

          Class.forName("oracle.jdbc.driver.OracleDriver");//加载数据驱动
          conn = DriverManager.getConnection(url, user, password);// 连接数据库

    } catch (ClassNotFoundException e) {
        e.printStackTrace();
        System.out.println("加载数据库驱动失败");
    }catch(Exception e){
        e.printStackTrace();
        System.out.println("连接数据库失败");
    }

}

}

```

三、区别

oci必须在客户机上安装oracle客户端或才能连接,而thin就不需要,因此从使用上来讲thin还是更加方便,这也是thin比较常见的原因。

thin是纯java实现tcp/ip的c/s通讯;而oci方式,

thin驱动切换到oci驱动很简单,只需把连接字符串java:oracle:thin:@hostip:1521:实例名换为java:oracle:oci@本地服务名即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值