`
dengyll
  • 浏览: 93417 次
社区版块
存档分类
最新评论

连接oracle数据库

 
阅读更多

1、直接以固定方式写在一个java类里进行连接,例如:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

/**
 * 封装数据库常用操作
 * @author Administrator
 *
 */
public class DbUtil {
	/**
	 * 取得Connection
	 * @return
	 */
	public static Connection getConnection(){
		Connection conn = null;
		try {
			Class.forName("oracle.jdbc.driver.OracleDriver");
			String url = "jdbc:oracle:thin:@192.168.26.3:1521:bjpowernode";
			String username = "test";
			String password = "test";
			conn = DriverManager.getConnection(url,username,password);
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}catch (SQLException e) {
			e.printStackTrace();
		}
		return conn;
	}
	public static void main(String[] arges){
		System.out.println(DbUtil.getConnection());
		
	}
}

2、配合xml配置文件灵活的进行数据库连接(更容易修改)例如:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

/**
 * 封装数据库常用操作
 * @author Administrator
 *
 */
public class DbUtil {
	/**
	 * 取得Connection
	 * @return
	 */
	public static Connection getConnection(){
		Connection conn = null;		
		try {
			JdbcConfig jdbcConfig = XmlConfigReader.getInstance().getJdbcConfig();
			Class.forName(jdbcConfig.getDriverName());
			String url = jdbcConfig.getUrl();
			String username = jdbcConfig.getUserName();
			String password = jdbcConfig.getPassword();
			conn = DriverManager.getConnection(url,username,password);
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}catch (SQLException e) {
			e.printStackTrace();
		}
		return conn;
	}
	public static void main(String[] arges){
		System.out.println(DbUtil.getConnection());
		
	}
}

JdbcConfig.java类(这里面还重写了toString()方法)

/**
 * jdbc配置信息
 * @author Administrator
 *
 */
public class JdbcConfig {


	private String driverName;
	
	private String url;
	
	private String userName;
	
	private String password;

	public String getDriverName() {
		return driverName;
	}

	public void setDriverName(String driverName) {
		this.driverName = driverName;
	}

	public String getUrl() {
		return url;
	}

	public void setUrl(String url) {
		this.url = url;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}
	
	@Override
	public String toString() {
		return this.getClass().getName() + "{driverName:" + driverName + ", url:" + url + ", userName:" + userName + ", password:" + password + "}";
	}	
}

XmlConfigReader.java类(读取xml配置信息使用了单例模式)

import java.io.InputStream;

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

/**
 * 采用单利模式解析sys-config.xml文件
 * @param args
 */
public class XmlConfigReader {

//	//饿汉式(预先加载)
//	private static XmlConfigReader instance = new XmlConfigReader();
//	
//	private XmlConfigReader(){
//		
//	}
//	
//	public static XmlConfigReader getInstance(){
//		return instance;
//	}
	
	//懒汉试(延迟加载lazy)
	private static XmlConfigReader instance = null;
	//保存jdbc相关配置信息
	private JdbcConfig jdbcConfig = new JdbcConfig();
	
	
	private XmlConfigReader(){
		SAXReader reader = new SAXReader();
		InputStream in = Thread.currentThread().getContextClassLoader().getResourceAsStream("sys-config.xml");
		try {
			Document doc = reader.read(in);
			//取得jdbc相关的配置
			Element driverNameElt = (Element)doc.selectObject("/config/db-info/driver-name");
			Element urlElt = (Element)doc.selectObject("/config/db-info/url");
			Element userNameElt = (Element)doc.selectObject("/config/db-info/user-name");
			Element passwordElt = (Element)doc.selectObject("/config/db-info/password");
			//设置jdbc相关的配置
			jdbcConfig.setDriverName(driverNameElt.getStringValue());
			jdbcConfig.setUrl(urlElt.getStringValue());
			jdbcConfig.setUserName(userNameElt.getStringValue());
			jdbcConfig.setPassword(passwordElt.getStringValue());
		} catch (DocumentException e) {
			e.printStackTrace();
		}
	}
	
	public static synchronized XmlConfigReader getInstance(){
		if(instance == null){
			instance = new XmlConfigReader();
		}
		return instance;
	}
	
	//返回jdbc相关配置信息
	public JdbcConfig getJdbcConfig(){
		return jdbcConfig;
	}
	
	public static void main(String[] args) {
		JdbcConfig jdbcConfig = XmlConfigReader.getInstance().getJdbcConfig();
		System.out.println(jdbcConfig);
	}
}

sys-config.xml(配置文件)

<?xml version="1.0" encoding="UTF-8"?>
<config>
	<db-info>
		<driver-name>oracle.jdbc.driver.OracleDriver</driver-name>
		<url>jdbc:oracle:thin:@192.168.26.3:1521:bjpowernode</url>
		<user-name>test</user-name>
		<password>test</password>
	</db-info>
</config>
分享到:
评论

相关推荐

    SQL SERVER连接oracle数据库几种方法

    SQL SERVER 连接 Oracle 数据库几种方法 在实际开发中,我们经常需要在 SQL Server 中连接 Oracle 数据库,以便实现数据交换和集成。那么,如何在 SQL Server 中连接 Oracle 数据库呢?下面我们将介绍几种常见的...

    如何连接oracle数据库及故障解决办法

    连接 Oracle 数据库是每个开发者和数据库管理员都需要掌握的基本技能,但是很多人在连接 Oracle 数据库时都会遇到各种问题,本文将详细介绍如何连接 Oracle 数据库及故障解决办法。 首先,在连接 Oracle 数据库之前...

    易语言连接Oracle数据库

    本文将详细介绍如何使用易语言连接Oracle数据库,并探讨相关组件的使用。 首先,连接Oracle数据库的基础是确保本机已经安装了Oracle客户端。Oracle客户端包含了连接Oracle服务器所需的所有组件,包括网络配置、...

    Eclipse是如何连接Oracle数据库的

    因此,如何在Eclipse中连接Oracle数据库,是许多开发者必须掌握的一项技能。下面将详细解析Eclipse连接Oracle数据库的过程与关键技术点。 ### 1. 配置Oracle JDBC驱动 在Eclipse中连接Oracle数据库的第一步,是...

    pdm连接oracle数据库

    ### pdm连接oracle数据库知识点详解 #### 一、PDM简介与Oracle数据库连接的重要性 产品数据管理(Product Data Management, PDM)系统是企业信息化的重要组成部分,用于管理与产品相关的所有数据,包括设计文档、...

    Excel通过VBA连接Oracle数据库

    在Excel中通过Visual Basic for Applications (VBA) 连接Oracle数据库是一种强大的自动化工具,能够让你轻松地从大型数据库中提取、处理和分析数据。VBA是Excel内置的编程环境,允许用户创建自定义功能和宏,以实现...

    java连接oracle数据库jar包

    Java连接Oracle数据库主要依赖于JDBC(Java Database Connectivity)技术,这是Java平台中用于与各种数据库进行交互的一套标准API。Oracle公司提供了JDBC驱动,使得Java程序能够方便地访问Oracle数据库。在Java中...

    PB如何连接Oracle数据库

    PB 如何连接 Oracle 数据库 本文将指导您如何使用 PowerBuilder 连接 Oracle 数据库,从最基本的 ODBC 配置到 DB Profile 配置和 PB 专用接口配置,整个过程简单易懂,适合初学者和高手。 ODBC 配置 在 Windows ...

    Java连接Oracle数据库的各种方法

    Java连接Oracle数据库主要依赖于两种方法:JDBC和SQLJ。这两种方法都是Oracle8i及其后续版本中为Java开发者提供的数据库交互方式。 JDBC(Java Database Connectivity)是一种标准的Java API,它允许Java应用程序...

    VS2008连接oracle数据库代码

    总之,VS2008连接Oracle数据库涉及的关键知识点包括安装ODP.NET,使用OracleConnection类建立连接,以及配合OracleCommand和OracleDataReader执行SQL查询。通过熟练掌握这些概念和类,开发者可以高效地在.NET环境中...

    通达OA“ERP数据源”连接oracle数据库相关配置手册.docx

    通达OA“ERP数据源”连接oracle数据库相关配置手册 本手册主要介绍了通达OA“ERP数据源”连接oracle数据库相关配置的详细步骤,涵盖了Oracle安装、Oracle客户端安装、OA ERP配置等方面。 一. Oracle安装 1.1 ...

    通过VB来连接oracle数据库做查询

    本篇文章将深入探讨如何利用VB连接Oracle数据库并执行查询。 首先,要连接Oracle数据库,我们需要在VB中引入Oracle的数据库访问组件,通常是Oracle Data Provider for .NET (ODP.NET)。这个组件允许VB应用程序直接...

    不必安装oracle客户端,QT成功连接oracle数据库

    总结来说,"不必安装oracle客户端,QT成功连接oracle数据库"这一技术方案,通过QT的QSqlDatabase类和Oracle的ODBC驱动,为开发者提供了一种轻量级的连接Oracle数据库的方法,减少了开发环境的维护成本,提高了工作...

    linux远程连接oracle数据库

    ### Linux远程连接Oracle数据库知识点详解 #### 一、测试项目 - **通过Java程序远程连接Oracle 10g数据库** - Java作为一种广泛使用的编程语言,可以用来开发各种应用程序,包括与数据库交互的应用。要实现Java...

    powerbuilder11.5连接Oracle数据库的通用方法。

    ### PowerBuilder 11.5 连接 Oracle 数据库与 SQL Server 2000 的通用方法 在软件开发过程中,数据库的连接是至关重要的一步。PowerBuilder 是一款功能强大的快速应用开发工具,广泛应用于企业级应用开发。本文将...

    初学SpringCloud连接Oracle数据库

    至此,你已经具备了在SpringCloud中连接Oracle数据库并进行数据操作的基础知识。在实际项目中,你可能还需要考虑事务管理、数据缓存、数据库分页、性能优化等方面的问题。确保对这些概念有深入理解,能够帮助你更好...

    php连接oracle数据库的方法(测试成功)

    2. 然后安装Oracle Instant Client,这是一个轻量级的Oracle客户端,提供了连接Oracle数据库所需的基本组件。 3. 在php.ini文件中启用oci8扩展,这一步需要在php.ini文件中设置extension=php_oci8以启用OCI8扩展。 4...

    c# 连接oracle数据库和对数据库的基本操作

    本篇文章将深入探讨如何使用C#连接Oracle数据库以及执行基本的数据操作。由于描述中提到这适用于初学者,我们将从基础知识开始讲解,并且不涉及高级或优化的技巧。 首先,你需要安装Oracle的数据提供者,即Oracle ...

    delphi 通过oci连接oracle数据库

    总的来说,通过OCI在Delphi中连接Oracle数据库是一种高效且灵活的方法,适合处理大量数据或需要高性能的应用场景。不过,这也需要开发者具备深厚的Oracle和C语言基础,以及良好的错误处理和资源管理技巧。在实际应用...

Global site tag (gtag.js) - Google Analytics