java与oracle数据库相连,用的是哪个jar文件?

java与oracle数据库相连,用的是哪个jar文件?,第1张

class12.jar文件。

由于thin驱动都是纯Java代码,并且使用TCP/IP技术通过java的Socket连接上Oracle数据库,所以thin驱动是与平台无关的,无需安装Oracle客户端,只需要下载一个thin驱动的jar包,并且将环境变量中的CLASS_PATH变量中加入thin驱动的路径就可以了。

Thin驱动虽然与平台无关,也无需安装Oracle客户端,但是有一个致命的缺陷就是性能一般,达不到如OCI方式的企业级的要求。另外,如果一个oracle数据库对应一台主机,可以使用thin连接;如果一个oracle数据库对应四五台主机(集群服务器)。

使用thin时,需要把tnsnames.ora文件中的相关数据库的整个连接字符串都拷贝下来,如此才能连接上oracle集群数据库。

使用OCI连接数据库是企业级的做法,适应于单个数据库和集群数据库,性能优越,尤其是连接池功能大大提高了应用程序的性能和并发量。唯一的缺点是,若想使用OCI必须要安装Oracle客户端。

这个是完全没有问题的。

先期准备:

1、两台电脑必须要联网,能够访问到

2、将oracle的驱动程序拷贝到你的java的电脑上,并设置到环境变量中。

java代码

import java.sql.Connection

import java.sql.DriverManager

import java.sql.PreparedStatement

import java.sql.ResultSet

import java.sql.SQLException

public class DbTest {

public static void main(String[] args) {

Connection conn = null

PreparedStatement prstm = null

ResultSet rs = null

try {

Class.forName("oracle.jdbc.driver.OracleDriver").newInstance()

String url="jdbc:oracle:thin:@ip:port:orcl" //数据库连接字符串,需要替换ip,port,orcl

String user="user" //用户名,需要替换你的数据库的用户名

String password="pswd" //密码,需要替换为对应的密码

conn = DriverManager.getConnection(url,user,password) //获取连接

prstm = conn.prepareStatement("SELECT 1 TEST_ID FROM DUAL")

rs = prstm.executeQuery()

while (rs.next()) {

System.out.println("查询结果为:" + rs.getInt("TEST_ID"))

}

} catch (InstantiationException e) {

// TODO Auto-generated catch block

e.printStackTrace()

} catch (IllegalAccessException e) {

// TODO Auto-generated catch block

e.printStackTrace()

} catch (ClassNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace()

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace()

} finally {

//使用完毕进行相关内容的关闭,注意相关顺序

if (rs != null) {

try {

rs.close()

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace()

}

}

if (prstm != null) {

try {

prstm.close()

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace()

}

}

if (conn != null) {

try {

conn.close()

} catch (SQLException e) {

e.printStackTrace()

}

}

}

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10031273.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存