J2EE应用中与Oracle数据库的连接
作者:洪建
在J2EE应用程序开发中,应用程序与数据库连接的建立是我们经常遇到的问题之一。在这里我主要谈谈在本地应用程序中通过OCI方式、thin方式和 JdbcOdbc桥方式连接Oracle数据库,在iPlanet Application Server 6.5和Sun ONE Application Server 7中对Oracle数据库连接池的配置以及应用中如何从连接池中获得连接。
一、本地通过JDBC获得Oracle数据库连接
通过JDBC获得Oracle数据库连接,有三种方式:OCI方式、thin方式和JdbcOdbc桥方式。OCI方式依赖于本地的动态链接库,如果在本地安装了Oracle数据库客户端可以采用该方式;而thin方式为纯java的数据库连接方式;JdbcOdbc桥方式依赖于本地ODBC数据库源的配置,这种方式一般不太被采用。
1、OCI方式
先在本地安装Oracle客户端,安装完之后,在安装的路径中可以找到…/jdbc/lib/classes12.zip文件,我们在环境变量classpath中设置classes12.zip所在的路径。
然后通过以下的数据库连接类,在本地通过OCI方式获得Oracle数据库连接。
/**
* 在本地获得数据库连接
*/
package com.j2ee.db;
import java.util.*;
import java.sql.*; import javax.sql.*;
import java.io.*;
import oracle.jdbc.driver.*;
import javax.naming.*;
/**
* 通过OCI方式获得Oracle数据库连接
*/
public class DbConnection
{
final static String sDBDriver = "oracle.jdbc.driver.OracleDriver";
final static String sConnStr = "jdbc:oracle:oci8:sr/sr@ora199";
/**
*
*/
public DbConnection() { }
/**
* 获得Oracle数据库连接
*/
public java.sql.Connection connectDbByOci()
{
java.sql.Connection conn=null;
try {
Class.forName(sDBDriver);
conn = DriverManager.getConnection(sConnStr);
}
catch (Exception e)
{
System.out.println("ERROR:"+e.getMessage());
}
return conn;
}
}
在连接字符串 "jdbc:oracle:oci8:sr/sr@ora199" 中,"sr/sr"为Oracle用户的用户名和口令,"ora199"为数据库服务名。
2、thin方式
先到Oracle技术网(http: //otn.oracle.com/global/cn/software/tech/java/sqlj_jdbc/index.html)下载 Oracle JDBC Drivers,同样地将下载后的zip文件的路径设置在环境变量classpath。
然后通过以下的数据库连接类,在本地通过thin方式获得Oracle数据库连接。
/**
* 在本地获得数据库连接
*/
package com.j2ee.db;
import java.util.*;
import java.sql.*;
import javax.sql.*;
import java.io.*;
import oracle.jdbc.driver.*;
import javax.naming.*;
/**
* 通过thin方式获得Oracle数据库连接
*/
public class DbConnection
{
private String sConnStr = "";
/**
* 缺省构造器
*/
public DbConnection()
{
sConnStr = "jdbc:oracle:thin:@10.1.4.199:1521:ora199";
}
/**
* @param ip,serviceName
*/
public DbConnection(String ip,String serviceName)
{
sConnStr = "jdbc:oracle:thin:@"+ip+":1521:"+serviceName;
}
/**
* 通过thin方式获得Oracle数据库的连接.
*/
public java.sql.Connection connectDbByThin()
{
java.sql.Connection conn=null;
try
{
Class.forName(sDBDriver);
conn = DriverManager.getConnection(sConnStr,"sr","sr");
}
catch (Exception e)
{
System.out.println("ERROR:"+e.getMessage());
}
return conn;
}
/**
*通过thin方式获得Oracle数据库的连接.
* @param userId,password
*/
public java.sql.Connection connectByJdbc(String userId,String password)
{
java.sql.Connection conn=null;
try
{
Class.forName(sDBDriver);
conn = DriverManager.getConnection(sConnStr,userId,password);
}
catch (Exception e)
{
System.out.println("ERROR:"+e.getMessage());
}
return conn;
}
}
这种方式运用起来比较灵活,简单,具有较强的移植性和适用性。只要注意连接字符串"jdbc:oracle:thin:@10.1.4.199:1521:ora199"中具体参数的设置即可。
3、JdbcOdbc桥方式
先通过管理工具中的数据源来添加本地对Oracle数据库的连接,然后通过以下的数据库连接类,在本地通过JdbcOdbc桥方式获得Oracle数据库连接。
/**
* 在本地获得数据库连接
*/
package com.j2ee.db;
import java.util.*;
import java.sql.*;
import javax.sql.*;
import java.io.*;
import oracle.jdbc.driver.*;
import javax.naming.*;
/**
* 通过JdbcOdbc桥方式获得Oracle数据库连接
*/
public class DbConnection {
/**
*
*/
public DbConnection()
{
}
/**
* 获得Oracle数据库连接
*/
public java.sql.Connection connectDbByJdbcOdbcBridge()
{
java.sql.Connection conn=null;
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); con=DriverManager.getConnection("jdbc:odbc:ora199","sr","sr");
}
catch (Exception e)
{
System.out.println("ERROR:"+e.getMessage());
}
return conn;
}
}
在getConnection方法中第一个参数"jdbc:odbc:ora199" 中的"ora199"为本地ODBC数据源的数据源名称,第二个参数和第三个参数分别为Oracle的用户名和口令。
分享到:
相关推荐
Oracle公司提供了JDBC驱动,使得Java程序能够方便地访问Oracle数据库。在Java中实现Oracle数据库连接,我们需要用到特定的JAR包,这些JAR包通常包含在Oracle的数据库客户端或者Oracle JDBC驱动程序中。 首先,...
Java连接Oracle数据库主要依赖于两种方法:JDBC和SQLJ。这两种方法都是Oracle8i及其后续版本中为Java开发者提供的数据库交互方式。 JDBC(Java Database Connectivity)是一种标准的Java API,它允许Java应用程序...
Java编程访问Oracle数据库是软件开发中的常见任务,它涉及到Java的JDBC(Java Database Connectivity)技术,Oracle数据库的使用以及数据库连接管理等多个方面。在这个场景中,`testODBC`可能是一个包含Java源代码...
在本课程设计中,我们利用Java编程语言与Oracle数据库相结合,构建了一个功能完善的学生成绩管理系统。这个系统针对管理员、教师和学生三个角色,提供了不同的权限和操作功能,旨在实现成绩的有效管理和查询。 首先...
这是一个基于Java编程语言和Oracle数据库开发的信息管理系统源代码项目,名为"hotel-management-master"。这个系统主要用于帮助管理者高效地处理员工信息和用户数据,尤其适用于酒店行业的信息管理。以下是关于这个...
本项目“JAVA 连接oracle数据库工程”将详细阐述如何使用Java在MyEclipse环境下连接到Oracle数据库。 首先,我们需要理解Java与Oracle数据库之间的连接基础。Java通过JDBC(Java Database Connectivity)API与各种...
在Java编程中,连接Oracle数据库是常见的任务,Oracle提供了多种方式来实现这一目标。本文主要探讨的是Java连接Oracle数据库的方法,包括JDBC和SQLJ,以及Oracle JDBC驱动的三种类型。 首先,Java与Oracle的接口...
《LIB图书管理系统:Java与Oracle数据库的协同应用》 在信息技术日益发达的今天,图书管理系统的建设已经成为图书馆信息化建设的重要组成部分。"LIB图书管理系统"就是这样一款利用Java编程语言与Oracle数据库相结合...
总之,Java通过Oracle JDBC驱动可以高效、安全地访问Oracle数据库,实现数据的读取、插入、更新和删除等一系列操作。这个驱动包为Java开发者提供了与Oracle数据库无缝集成的工具,大大简化了开发流程。
在IT领域,尤其是在Java开发与Oracle数据库交互的过程中,处理BLOB(Binary Large Object)类型字段是一项常见且重要的任务。BLOB字段主要用于存储大量的二进制数据,如图像、音频、视频或任何其他非文本格式的数据...
基于java实现访问oracle数据库的方法.pdf
3. **Native SQL API驱动**:这个驱动提供对Oracle数据库特定功能的直接访问,如PL/SQL块和Oracle数据类型。 4. **Oracle Call Interface (OCI) 驱动**:这需要本地Oracle客户端库,提供了对Oracle高级特性的全面...
本篇文章将详细介绍如何通过Java编程语言在Windows和Linux操作系统上实现对Oracle数据库的备份。 首先,理解Oracle数据库备份的基本概念是必要的。Oracle提供多种备份方式,包括物理备份(如数据文件、控制文件、...
标题“Java用JDBC实现对Oracle数据库操作”主要涉及Java编程语言如何利用Java Database Connectivity (JDBC) API来与Oracle数据库进行交互。JDBC是Java中用于与各种数据库通信的标准接口,而Oracle数据库是一个广泛...
2. **JDBC(Java Database Connectivity)**:JDBC是Java访问数据库的标准API,允许Java程序与各种类型的数据库进行通信。通过JDBC,你可以执行SQL语句、处理结果集、事务管理等操作。理解JDBC的核心概念,如...
【Java 访问 Oracle9i 数据库的方法】 Java 语言在与关系型数据库交互时,Oracle9i 是一种常见的选择。Oracle9i 提供了多种方式供 Java 程序进行数据访问,主要包括 JDBC(Java Database Connectivity)和 SQLJ。这...
Oracle数据库Java驱动,即ojdbc,是Oracle公司提供的用于Java应用程序连接Oracle数据库的关键组件。它遵循Java Database Connectivity (JDBC) API标准,使得Java开发者能够方便地在Oracle数据库上执行SQL语句、处理...
当我们需要在Java应用程序中访问Oracle数据库时,就需要实现Java与Oracle数据库的连接。这个“Java连接Oracle数据库.rar”压缩包提供了必要的资源和示例代码来帮助开发者完成这一任务。 首先,ojdbc14.jar是Oracle...
在Java编程领域,Oracle数据库是广泛使用的数据库管理系统之一,尤其在企业级应用中。本教程主要探讨如何在Java中利用多线程技术高效地与Oracle数据库进行交互,从而实现更强大的并发处理能力。通过"Java操作Oracle...
在Java编程中,连接Oracle数据库是一项基础而重要的任务。这个"java连接oracle数据库最简单例子"提供了详尽的步骤和代码示例,非常适合初学者学习。以下是对这个主题的详细解释: 首先,Java通过JDBC(Java ...