************************************************************************ ****原文:blog.csdn.net/clark_xu 徐长亮的专栏 ************************************************************************
1.1
读者:
具备java,plsql,oracledatabases基础知识
1.2
相关文档:
关于oracle java平台的文档
oracledatabase java developer’s guide;
oracle databasejpublisher user’s guide
oracle databaseadvanced application developer.s guide
oracle databaseplsql packages and types reference;
oracle databaseplsql language reference
oracle databasesql language reference
oracle databasenet services administrator’s guide
oracle databaseadvanced security administrator’s guide
oracle databasereference
oracle databaseerror messages;
一
新特性
oracle 11.1
的改变分为:
新的特性
不支持的特性
接口改变
1.1
新的特性
jdk1.5
和jdk1.6
支持:
oracle jdbc thin驱动和oci
驱动支持jdk1.5和jdk1.6;
服务器端的jdbc驱动只提供支持jdk1.5;
jdbc4.0支持:
oracle jdbc驱动支持大多数的jdbc4.0标准功能;
1.2
接口变化:
oracle 9 jdbc中的oracle.jdbc.driver包被oracle.jdbc包替代了。
oracle.jdbc.OracleConnection功能被加强了。
第一部分
概述
本章介绍jdbc(java database connectivity)的内容,提供了oracle对于jdbc的实现概述;本章概述了oracle客户端配置jdbc驱动;
第一部分报告如下章节:
- jdbc简介
- 启动jdbc
第一章jdbc介绍
jdbc是java连接关系数据库的java标准,被java.sql接口支持;jdbc4.0服从sql
2003标准;本章包括如下主题:
oraclejdbc驱动概述;环境和支持;功能列表
1.1
oracle jdbc
驱动概述
除了支持标准jdbc api(application programming interfaces),oracle支持如下jdbc驱动:
- thin driver:
是在client-sid干净的java驱动,不需要oracle
client的安装;javaapplets和java应用都可以使用thin driver - oracle call interface(oci) driver:
需要oracle client的安装,在client-side;只能被java application使用,不能被java
applets使用; - server-sid thin driver
功能和client-sid thin driver功能相似;数据库服务器运行server-sid thin driver,来和本地或者其他服务器的其他的会话sesstion通信
- server-sid internal driver
代码获取同一个oracle session(会话)
图1-1 oraclejdbc驱动和oracle数据库架构的插图
这个主题报告如下子主题:
oraclejdbc驱动的通用特征;选择恰当的驱动;jdbc oci和thin驱动的功能区别
1.1.1
oracle jdbc通用特征
server-side
和client-sidoracle jdbc驱动提供相同的基本功能;
jdbc thin
和
oci驱动支持jdk1.5,1.6;server-side内部驱动只支持jdk1.5;
所有的jdbc标准驱动支持如下标准特征:
- 相同的语法和api
- 相同的oracle扩展
- 完全支持多线程应用;
oracle jdbc驱动的标准功能在java.sql中,oracle特有的功能在oracle.jdbc包中;
jdbc thin driver
jdbc thindriver是一个纯净的java程序,它是平台独立的,不需要额外的任何oracle软件装在client-side中;jdbc
thin driver通过SQL*Net来和数据库进行通信的;jdbc
thin driver通过在java sockets头中实现sql*net
来直接连接数据库;jdbc thin驱动需要数据库服务器启动TNS监听TPC/IP
socket;
jdbc oci driver
jdbc oci驱动是java类型2驱动,需要安装oracleclient,即只支持oracle平台;oci驱动支持全部的oracle
net adapters适配器,包括IPC,管道命名,TCP/IP,IPX/SPX;
jdbcoci驱动是用java和C混合写的,使用被动的方式调用C-entry指针来将jdbc请求传给oci;这些通信需要使用数据库的sql*net;
概况为jdbc oci使用ocilibraties,c-entry
points, oracle net,核心库和其他必要的文件;
jdbc server-side thin driver
在如下场景适用:
java存储过程获取其他session;
jdbc server-side 内部驱动
例如java存储过程获取相同的数据库;让JVM直接同sql引擎通信;
1.1.2
选择恰当的驱动
- 通常除非使用oci特有的功能,如non-TCPIP网络,一般使用thindriver;
- 如果使用LDAP和SSL,请使用thindriver
- 如果使用早期的java应用和applets,使用
thindriver
************************************************************************ ****原文:blog.csdn.net/clark_xu 徐长亮的专栏 ************************************************************************