java链接oracle数据库

本文详细介绍了使用Java连接Oracle数据库时可能遇到的问题及解决方案,特别是关于URL配置中的服务名错误导致无法成功建立连接的情况,并对比了thin驱动和oci驱动的特点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一开始链接的时候出现了这个问题
这里写图片描述
其实问题很好解决,如果你的oracle没有问题,就千万不要去碰你的oracle的配置,肯定是你的链接url有问题,后来我发现是我的服务名写错了

package oracle;

public class Conn {
    public final static String db="oracle.jdbc.driver.OracleDriver";
    public final static String uri="jdbc:oracle:thin:@localhost:1521:ORCL";
    public final static String user="scott";
    public final static String passwd="1995";

}

现在我把链接成功的配置写出来
ORCL是服务名,可以通过nvicat看到

这里写图片描述

在这里区分一下Oracle的thin驱动和oci驱动
这是Oracle提供的两套Java访问Oracle数据库的方法

thin就是纯粹用Java完成访问数据库的所有方法,优点是不用安装客户端

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

OCI:要安装ORACLE客户端,移植性略差,理论上性能好些

THIN:属于TYPE4,纯JAVA实现,移植性好,理论上性能略差些

推荐:最好还是使用THIN DRIVER吧,移植性好些,使用起来也相对规范些,问题也少。至于性能嘛,说实话,在8i上没感觉THIN DRIVER比OCI慢,感觉还快些。不过没有实际准确测试过,也不敢下定论。为什么呢,调用本地方法也是有开销的,JDK性能越来越好,本地方法的性能与调用的开销相抵一下就打了一点折扣。另外ORACLE 8i本身就是JAVA实现,对JAVA支持很好,用THIN DRIVER不显得慢反而快也许有这方面的原因。

在以前的程序里面,你也许会看到一个class12.jar
class12.jar用于JDK1.2,1.3中,虽然在1.4,1.5中使用一般情况是没有问题的,但由于环境的变化可能出现未知的错误,
ojdbc14.jar用于JDK1.4及其以上版本

我这里用的是ojdbc6g.jar
oracle的ssid和服务名是一个意思

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值