学习笔记之Java连接Oracle数据库实例代码讲解的各种方法_第1页
学习笔记之Java连接Oracle数据库实例代码讲解的各种方法_第2页
学习笔记之Java连接Oracle数据库实例代码讲解的各种方法_第3页
学习笔记之Java连接Oracle数据库实例代码讲解的各种方法_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、学习好资料欢迎下载实例代 码讲解 Java 连接 Oracle数据库的各种方法发布时 间: 2007-12-19 18:03:55来源 :作者 :点击:1751java 与 oracle的接口:在数据库中运行 JAVA可以说是 ORACLE8i的最令人激动的新特性。 在你创建的使用 ORACLE8i数据库的应用程序中,你可以使用与 JAVA有关的新特征,轻松的将程序发布到 INTERNET或 INTRANET上。Methods for Using Java in ORACLE大家都知道 JAVA在跨平台开发与 INTERNET开发中已经比较流行, ORACLE8i 及以后的版本中都包含了对在数

2、据库中运行 JAVA的扩展支持,这里有两种方法可以使用:JDBC:与 ODBC类似 , JDBC 提供了一个驱动接口使你可以在 JAVA程序中访问数据库。注: JDBC驱动内嵌在数据库中虚拟机中。SQLJ:是一个 JAVA预编译器,它可以将内嵌的SQL语句转化为 JAVA语句 .SQLJ 的使用与运行机理与其它 ORACLE的与编译器(如 Pro*C,Pro*COBOL)类似。实际上,为了使我们形象的记住 SQLJ提供的功能,我们也可以直接将 SQLJ改名为 Pro*Java 。将 JAVA集成到数据库中是双向的。也就是说你可以在 JAVA中调用 SQL与PL/SQL,也可以在 SQL与 PL

3、/SQL中调用 JAVA。JAVA程序可以直接通过 JDBC驱动调用 SQL与 PL/SQL,反过来,你也可以在 SQL与 PL/SQL中直接调用 JAVA。在数据库中,JAVA命名空间直接映射到数据库模式的命名空间中, 这样可以方便 JAVA 的存取与调用。 数据库同时提供扩展的 DDL语句,通过这些语句, 你可以象创建一个存储过程一样在数据中创建内嵌的 JAVA程序。Features of ORACLE JDBC Drivers在 ORACLE8i中有三种类型的 JDBC驱动,他们都使用相同的 syntax, APIs,and Oracle extensions,以使 JAVA代码在 ro

4、bust clients、Web-based Javaapplets, and Java stored procedures之间保持轻便灵活:三种类型如下:1JDBC OCI: 此驱动类似于传统的 ODBC驱动。因为它需要 Oracle Call Interface and Net8 ,所以它需要在运行使用此驱动的 JAVA程序的机器上安装客户端软件2JDBCThin : 这种驱动一般用在运行在 WEB浏览器中的 JAVA程序。它不是通过 OCI or Net8,而是通过 Java sockets 进行通信 ,因此不需要在使用 JDBC Thin 的客户端机器上安装客户端软件。3JDBCKPR

5、B: 这种驱动由直接存储在数据库中的 JAVA程序使用,如 Java Stored Procedures 、triggers 、Database JSPs。It uses the default/ current database session and thus requires no additional database username, password or URL.学习好资料欢迎下载如何配置使 JAVA可以通过 Oracle JDBCDrivers 连接到数据库: 1. 安装 Sun JDK.2. 修改 PATH环境变量,使其指向 JDK的 bin 目录3. 设置 CLASSPA

6、TH环境变量,使其指向正确的 JDK的 lib 及 oracle 的 JDBC接口。CLASSPATH = ".;?"3.运行 "java ?version",验证 java 的版本。如何在不同的操作系统上根据接口类型设置客户端:对 JDBC THIN接口:在 windows 与 unix 下的设置方法一样:1根据 jdk 的版本,只需要将classesxx.zip安装 Oracle Client。在装完数据库后,该文件会在拷贝到指定的目录,不需要$ORACLE_HOME/jdbc/lib目录下。 2设置 CLASSPATH,使其包含上面的classes

7、xx.zip3根据需要,拷贝oracle的其它 zip 文件并设置 CLASSPATH对 JDBC OCI接口: Fow Windows:1安装 Oracle Client.2根据 jdk 的版本,设置 CLASSPATH,使其包含正确的classesxx.zip3根据需要设置 CLASSPATH,使其指向 Oracle 的其它 zip 文件4设置 PATH,使其包含 $ORACLE_HOMEbin 目录For unix :1安装 Oracle Client.2根据 jdk 的版本,设置 CLASSPATH,使其包含正确的classesxx.zip3根据需要设置 CLASSPATH,使其指向

8、Oracle 的其它 zip 文件4设置 LD_LIBRARY_PATH,使其包含 $ORACLE_HOME/lib目录备注:classesxx.zip一般在 ORACLE_HOMEjdbc lib目录下。在 ORACLE_HOMEjdbc lib 目录下的与 Oracle JDBC Drives 驱动有关的文件的 解释:- classes12.zipClasses for use with JDK 1.2.x. It contains the JDBC driver classes except classes necessary for NLS support in Object and

9、Collection types.- nls_charset12.zipNLS classes for use with JDK 1.2.x. It contains classes necessaryfor NLS support in Object and Collection types.学习好资料欢迎下载- classes12_g.zipSame as classes12.zip, except that classes were compiled with "javac -g".JDBC连接数据库的语法:JDBC THIN:Connection conn=Driv

10、erManager.getConnection("jdbc:oracle:thin:dlsun511:1521:ora1","scott","tiger");|machine(ip) : port# : sidJDBC OCI:Connection conn=DriverManager.getConnection("jdbc:oracle:oci8Array:RAC","scott","tiger");|Net ServiceJDBC THIN与 JDBC THIN对比:相同

11、之处:The JDBC Thin, JDBC OCI, and JDBC Server drivers all providethe same functionality. They all support the following standards and features:* JDBC 2.0* Partial JDBC 3.0 (in JDBC driver version Array.2)* the same syntax and APIs* the same Oracle extensions主要是 JDBC OCI 接口比 JDBC THIN接口效率高!How does one

12、 connect with the JDBC Thin Driver?The the JDBCthin driver provides the only way to access Oracle from the Web (applets). It is smaller and slower than the OCI drivers.import java.sql.*;class dbAccess public static void main (String args ) throws SQLExceptionDriverManager.registerDriver (new oracle.

13、jdbc.driver.OracleDriver()学习好资料欢迎下载);Connection conn = DriverManager.getConnection("jdbc:oracle:thin:dbhost:1521:ORA1", "scott", "tiger");/ machine:port:SID,userid,passwordStatement stmt = conn.createStatement();ResultSet rset = stmt.executeQuery ("select BANNER fr

14、om SYS.V_$VERSION");while (rset.next()System.out.println (rset.getString(1);stmt.close();/ Print col 1How does one connect with the JDBC OCI Driver?One must have Net8 (SQL*Net) installed and working before attempting to use one of the OCI drivers.import java.sql.*;class dbAccess public static v

15、oid main (String args ) throws SQLException try Class.forName ("oracle.jdbc.driver.OracleDriver"); catch (ClassNotFoundException e) e.printStackTrace();Connection conn = DriverManager.getConnection("jdbc:oracle:oci8:ORA1", "scott", "tiger");/ or ociArray Servi

16、ce, userid, password Statement stmt = conn.createStatement(); ResultSet rset = stmt.executeQuery ("select BANNER from SYS.V_$VERSION");while (rset.next()System.out.println (rset.getString(1); / Print col 1 stmt.close();How does one connect with the JDBC KPRB Driver?One can obtain a handle

17、to the default or current connection学习好资料欢迎下载(KPRB driver) by calling the OracleDriver.defaultConenction() method. Please note that you do not need to specify a database URL, username or password as you are already connected to a database session. Remembernot to close the default connection. Closing the default connection might throw an exception in future releases of Oracle.import java.sql.*

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论