Java 与 Oracle 数据库的连接
2005-01-09 16:00
501 查看
Java 与 Oracle 数据库的连接
1、OCI方式
先在本地安装Oracle客户端,安装完之后,在安装的路径中可以找到…/jdbc/lib/classes12.zip文件,我们在环境变量classpath中设置classes12.zip所在的路径。
然后通过以下的数据库连接类,在本地通过OCI方式获得Oracle数据库连接。
/**
* 在本地获得数据库连接
*/
__________________
----------------------------------------
好的东西来得都很迟!
热爱生活!
由 top 在 03-23-2004 15:51 发表:
一个实体的例子:
__________________
----------------------------------------
好的东西来得都很迟!
热爱生活!
由 hantsy 在 03-25-2004 21:24 发表:
一般用thin方式连接比较好,,,数据库连接的程序还是用dbcp(jndi)比较好。。。
__________________
My blog:http://blog.chinaunix.net/index.php?blogId=1096
由 hantsy 在 03-25-2004 21:32 发表:
/*
* 创建日期 2003-10-29
* Copyright2003 hantsy<hantsy@163.net>
*
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
*/
package com.demo;
import java.sql.Connection;
import java.sql.SQLException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
public class ConnectionPool {
private static String JNDI_NAME = "java/env/jdbcdemo";
private DataSource ds;
private static ConnectionPool mySelf;
private ConnectionPool(DataSource ds) {
this.ds = ds;
}
public static ConnectionPool getInstance() {
try {
if(mySelf == null) {
Context initCtx = new InitialContext();
DataSource ds = (DataSource)initCtx.lookup(JNDI_NAME);
mySelf = new ConnectionPool(ds);
}
return mySelf;
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 = "jdbcracleci8: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; } } 在连接字符串 "jdbcracleci8: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 = "jdbcracle:thin:@10.1.4.199:1521ra199"; } /** * @param ip,serviceName */ public DbConnection(String ip,String serviceName) { sConnStr = "jdbcracle: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; } } 这种方式运用起来比较灵活,简单,具有较强的移植性和适用性。只要注意连接字符串"jdbcracle:thin:@10.1.4.199:1521ra199"中具体参数的设置即可。 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("jdbcdbcra199","sr","sr"); } catch (Exception e) { System.out.println("ERROR:"+e.getMessage()); } return conn; } } 在getConnection方法中第一个参数"jdbcdbcra199" 中的"ora199"为本地ODBC数据源的数据源名称,第二个参数和第三个参数分别为Oracle的用户名和口令。 二、通过连接池获得Oracle数据库连接 这部分主要讲述在iPlanet Application Server 6.5和Sun ONE Application Server 7中Oracle数据库连接池的配置,以及在应用中如何通过连接池获得数据库的连接。 1、iPlanet Application Server 6.5连接池的配置 先打开iPlanet Application Server 6.5的管理控制台,选中"database"面板,再选择"External JDBC Drivers"选项后,点击"Add…"按钮,在弹出的对话框中,添加一个名为"ora-type4"的JDBC Driver。 Driver Classpath:该参数填写classes12.zip文件的物理路径。 然后在"External JDBC DataSources"中选择"Add…",在弹出的对话框中添加一个JNDI名称为"credit2"的数据源。
__________________
----------------------------------------
好的东西来得都很迟!
热爱生活!
由 top 在 03-23-2004 15:51 发表:
一个实体的例子:
源码: import java.sql.*; import oracle.jdbc.*; import oracle.sql.CLOB; /** * * 临时数据库连接 * */ public class DBConnection { static final String driver = "sun.jdbc.odbc.JdbcOdbcDriver"; static final String url = "jdbcdbc:AssessSystem"; static final String user = "User"; static final String password = "123456"; static Connection con = null; public DBConnection() { } public static Connection getConnection(){ try{ Class.forName(driver); con = DriverManager.getConnection(url, user, password); if(con != null) System.out.println("Connection success !"); return con; } catch(Exception e){ System.out.println("Connection failed !"); System.out.println(e.toString()); return null; } } }
__________________
----------------------------------------
好的东西来得都很迟!
热爱生活!
由 hantsy 在 03-25-2004 21:24 发表:
一般用thin方式连接比较好,,,数据库连接的程序还是用dbcp(jndi)比较好。。。
__________________
My blog:http://blog.chinaunix.net/index.php?blogId=1096
由 hantsy 在 03-25-2004 21:32 发表:
/*
* 创建日期 2003-10-29
* Copyright2003 hantsy<hantsy@163.net>
*
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
*/
package com.demo;
import java.sql.Connection;
import java.sql.SQLException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
public class ConnectionPool {
private static String JNDI_NAME = "java/env/jdbcdemo";
private DataSource ds;
private static ConnectionPool mySelf;
private ConnectionPool(DataSource ds) {
this.ds = ds;
}
public static ConnectionPool getInstance() {
try {
if(mySelf == null) {
Context initCtx = new InitialContext();
DataSource ds = (DataSource)initCtx.lookup(JNDI_NAME);
mySelf = new ConnectionPool(ds);
}
return mySelf;
相关文章推荐
- java连接Oracle 数据库
- java连接数据库Oracle|DB2|Sql Server|Sybase|Informix|MySQL||PostgreSQL|access
- Java连接数据库(mysql,sqlsever,Oracle,access)的调用函数!
- 数据库操作:java连接ORACLE实例代码演示
- Java学习-006-三种数据库连接 MySQL、Oracle、sqlserver
- java连接数据库oracle
- Java中JDBC连接数据库Oracle
- Java连接数据库步骤解析(Oracle、MySQL)
- java连接MySQL、Sql Server、Sysbase、Oracle等7种常见数据库
- java中三种主流数据库数据库(sqlserver,db2,oracle)的jdbc连接总结
- java连接数据库时jdbc设置编码-jdbc-oracle-字符编码
- Java连接Oracle数据库开发银行管理系统【二、设计篇】
- 关于oracle设置不活动自动断开连接导致java访问数据库时发生异常的问题
- java连接数据库(mysql,sql server,oracle,db2)
- Java:JDBC篇,Connection连接至几种常用数据库(Oracle,MySQL,Access,SQL Server)
- java连接各种数据库(mysql,sql server,oracle,db2)
- 【JAVA】 Java、JSP连接数据库方法类(MySQL、Oracle、SQLServer)
- jdbc (oracle) java连接数据库(2)
- java连接Oracle、Mysql、DB2、Sybase、Informix、PostgreSQL数据库代码
- java连接数据库(SQL Server、MySQL、Oracle)及基本查询