分享
 
 
 

JDBC编程学习笔记1

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

连接Oracle数据库的各种oracle JDBC驱动程序的细节。

这些细节包括:

1、导入JDBC包

2、注册oracle JDBC驱动程序

3、打开数据库连接

4、执行SQL DML语句在数据库表中获取、添加、修改和删除行

一、JDBC驱动程序

共有有4种

1、Thin驱动程序

Thin驱动程序是所有驱动程序中资源消耗最小的,而且完全用java编写的。

该驱动程序只使用TCP/IP且要求Oracle Net。被称为第4类驱动程序。

它使用TTC协议与Oracle数据库进行通信。能够在Applet、Application中使用。

2、OCI驱动程序

OCI驱动比Thin需要资源要多,但性能通常好一点。OCI驱动适合于部署在

中间层的软件,如Web服务器。不能在applet中使用OCI驱动。是第2类驱动程序。

不完全用java写的,还包含了c代码。该驱动有许多附加的性能增强特性,

包括高级的连接缓冲功能。

注意:OCI驱动要求在客户计算机上安装它。

3、服务器内部驱动程序

服务器内部驱动程序提供对数据库的直接访问,Oracle JVM使用它与数据库进行通信。

Oracle JVM是与数据库集成的Java Virtual Machine,可以使用Oracle JVM将

Java类装载进数据库,然后公布和运行这个类中包含的方法。

4、服务器Thin驱动程序

服务器端Thin驱动程序也是由Oracle JVM使用的,它提供对远程数据库的访问。

也是完全用Java编写的。

二、导入JDBC包

三、注册Oracle JDBC驱动程序

必须先向java程序注册Oracle JDBC驱动程序,然后才能打开数据库连接。

有两种注册Oracle JDBC驱动程序的办法。

1、使用java.lang.Class的forName()方法

例子:Class.forName("oracle.jdbc.OracleDriver");

2、使用JDBC DriverManager类的registerDriver()方法。

例子:DriverManager.registerDriver(new oracle.jdbc.OracleDriver());

如果使用Oracle8i JDBC驱动程序,那么需要导入oracle.jdbc.driver.OracleDriver类,

然后注册这个类的实例。

例子:

import oracle.jdbc.driver.OracleDriver;

DriverManager.registerDriver(new oracle.jdbc.OracleDriver());

注意:从JDBC2.0开始,只用JDBC驱动程序的更标准办法是通过数据源。

四、打开数据库连接

必须先打开数据库连接,然后才能在Java程序中执行SQL语句。打开数据库连接

的主要办法。

1、DriverManager类的getConnection()方法。

DriverManager.getConnection(URL,USERNAME,PASSWROD);

URL:程序要连接的数据库,以及要使用的JDBC驱动程序

URL的结构依赖于JDBC驱动程序的生产商。对于Oracle JDBC驱动程序,数据库URL的结构:

driver_name@driver_information

driver_name是程序使用的Oracle JDBC驱动程序的名称。如:

jdbc:oracle:thin Oracle JDBC Thin驱动程序

jdbc:oracle:oci Oracle JDBC OCI驱动程序

jdbc:oracle:oci8 Oracle JDBC OCI驱动程序

driver_information是连接数据库所需的驱动程序特有的信息。这依赖于使用的驱动程序。

对于Oracle JDBC Thin驱动程序,可以用

host_name:port:database_sid 或者 Oracle Net关键字-值对

(description=(address=(host=host_name)(protocol=tcp)(port=port()

(connect_data=(sid=database_sid)))

host_name: 运行数据库的机器的名称

port: Net数据库监听器等待这个端口上的请求,默认是1521

database_sid: 要连接的数据库实例的Oracle SID。

USERNAME: 程序连接数据库时使用的数据库用户名

PASSWROD: 用户名的口令

例子:

Connection myConnection=DriverManager.getConnection(

"jdbc:oracle:thin:@localhost:1521:ORCL",

"store_user",

"store_password");

Connection myConnection=DriverManager.getConnection(

"jdbc:oracle:oci:@(description=(address=(host=localhost)"+

"(protocol=tcp)(port=1521))(connect_data=(sid=ORCL)))",

"store_user",

"store_password");

2、使用Oracle数据源对象,必须先创建这个对象,然后连接它。使用这种方法

采用了一种设置数据库连接信息的标准化方式,Oracle数据源对象可以与

Java Naming and Directory Interface(Java名字与目录接口,JNDI)一起使用。(未整理完,先睡觉

)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有