`
yaku2688
  • 浏览: 89972 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

JDBC连接数据库

    博客分类:
  • JDBC
阅读更多

JDBC连接工厂类ConnectionFactory

package com.yaku.util;

import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;

/**
 * 数据库连接工厂类,专门取得数据连接的
 * @author hery
 */
public class ConnectionFactory {
	private static Properties config = new Properties();
	static {
		InputStream in = ConnectionFactory.class.getResourceAsStream("db-config.properties");
		if (in == null) {
			throw new RuntimeException("not found the DBConfig file");
		}
		try {
			config.load(in);
			in.close();
		} catch (Exception e) {
			e.printStackTrace();
			throw new ExceptionInInitializerError("the file load fail!");
		}
	}

	public static Connection getDirectConnection() {
		Connection con = null;
		String jdbcDriver = null;
		String jdbcUrl = null;
		String userName = null;
		String password = null;
		try {
			jdbcDriver = config.getProperty("drivername");
			jdbcUrl = config.getProperty("jdbcurl");
			userName = config.getProperty("username");
			password = config.getProperty("password");
			// Class.forName("oracle.jdbc.driver.OracleDriver");
			Class.forName(jdbcDriver);
			// con = DriverManager.getConnection("jdbc:oracle:thin:@192.168.1.13:1521:sta","sta01","sta02");
			con = DriverManager.getConnection(jdbcUrl, userName, password);
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return con;
	}

	public static Connection getJNDIConnection() {
		Connection con = null;
		String jndiName = config.getProperty("jndiName");
		try {
			Context context = new InitialContext();
			DataSource ds = (DataSource) context.lookup("java:comp/env/"
					+ jndiName);
			con = ds.getConnection();
		} catch (Exception e) {
			e.printStackTrace();
		}
		return con;
	}

	public static Connection getConnection() throws SQLException {
		Connection con = null;
		if (config.getProperty("jndiName") != null) {
			try {
				con = getJNDIConnection();
			} catch (Exception e) {
				e.printStackTrace();
			}

			if (con == null) {
				con = getDirectConnection();
			}
		} else {
			con = getDirectConnection();
		}

		return con;
	}

	@SuppressWarnings("static-access")
	public static void main(String args[]) throws SQLException {
		ConnectionFactory cf = new ConnectionFactory();
		System.out.println(cf.getConnection());
	}
}

 JDBC关闭工厂类CloseUtil

package com.yaku.util;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class CloseUtil {
	public static void close(Statement st, Connection con) {
		if (st != null) {
			try {
				st.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		if (con != null) {
			try {
				con.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
	}

	public static void close(ResultSet rs, Statement st, Connection con) {
		if (rs != null) {
			try {
				rs.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		close(st, con);
	}
}

 配置文件db-config.properties

drivername = com.microsoft.sqlserver.jdbc.SQLServerDriver
jdbcurl = jdbc:sqlserver://192.168.1.2:1433;DatabaseName=Test
username = sa
password =sa

 

分享到:
评论

相关推荐

    JDBC连接数据库测试

    JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试...

    JDBC连接数据库方法文档

    JDBC 连接数据库方法文档 JDBC(Java Database Connectivity)是 Java 语言中用于连接数据库的标准 API。它提供了一种统一的方式来访问各种类型的数据库,包括关系数据库、对象数据库和文本数据库等。下面是 JDBC ...

    JDBC连接数据库步骤及代码

    ### JDBC连接数据库步骤详解 #### 一、简介 在Java开发中,经常需要与数据库进行交互,例如查询数据、更新数据等操作。为了方便开发者进行这些操作,Sun公司推出了一套标准的Java访问数据库的API——Java Database...

    jdbc连接数据库jdbc连接数据库

    "JDBC 连接数据库" JDBC(Java Database Connectivity)是一种Java API,用于连接数据库,并执行 SQL 语句以访问和操作数据库中的数据。JDBC API 由java.sql包提供,包括了 Connection、Statement、ResultSet 等...

    jdbc连接数据库步骤

    对于初学者来说,理解JDBC连接数据库的基本步骤至关重要。以下是详细解释这些步骤的知识点: 1. 加载JDBC驱动程序: 在连接数据库之前,首先需要在Java虚拟机(JVM)中加载对应的数据库驱动程序。这一步是通过使用...

    JDBC连接数据库步骤

    jdbc java 数据库 连接数据库 步骤

    java实例jdbc连接数据库大全.doc

    JDBC连接数据库的基本步骤包括: 1. 加载数据库驱动:`Class.forName(driverClassName);` 2. 创建数据库连接:`Connection conn = DriverManager.getConnection(url, username, password);` 3. 获取Statement或...

    常用的jdbc连接数据库架包jar

    "常用的jdbc连接数据库架包jar"指的是包含不同数据库驱动的Java类库,这些驱动使得Java程序能够通过JDBC API与Oracle、DB2、SQLServer和MySQL等主流数据库建立连接。下面我们将详细探讨这些数据库以及它们对应的JDBC...

    JDBC连接数据库各种数据库参数大全

    ### JDBC连接数据库各种数据库参数详解 #### 一、Oracle8/8i/9i数据库(thin模式) 在Java中通过JDBC访问Oracle数据库时,通常采用thin驱动方式。thin驱动是一种纯Java驱动,无需依赖任何非Java代码即可完成与...

    JDBC连接数据库工具类

    JDBC连接数据库工具类 JDBC 连接数据库 ORACLE SQLSERVER MYSQL ORACLE 已测 OK 欢迎大家反馈 我的微博是: http://weibo.com/namenode

    eclipse JDBC连接数据库及jsp操作数据库数据详细教程.docx

    eclipse JDBC连接数据库及jsp操作数据库数据详细教程 本教程旨在指导读者如何使用Eclipse、JDBC和JSP来连接数据库并操作数据库数据。整个教程分为三部分:安装准备工作、安装Tomcat和MyEclipse、配置JDBC连接数据库...

    Java中JDBC连接数据库详解

    Java中JDBC连接数据库详解 Java中JDBC连接数据库详解是指Java程序使用JDBC(Java Database Connectivity)来连接和操作数据库的过程。JDBC是一种Java API,用于连接和操作数据库,它提供了一套标准化的接口,允许...

    JDBC连接数据库JDBC连接数据库.ppt

    JDBC连接数据库JDBC连接数据库

    JAVA使用JDBC连接数据库的源码实例

    JAVA使用JDBC连接数据库的源文件下载(两种方式),初学者可以下载,相互学习。可直接使用的源码工具。

    第五章 JDBC连接数据库.pdf

    本章主要针对如何使用JDBC连接Oracle数据库,提供了详细步骤说明,适用于教学及实际开发中的应用。JDBC允许Java程序执行SQL语句,适用于多种关系型数据库,如Oracle、MySQL、SQL Server等。 首先,JDBC连接Oracle...

    JDBC连接数据库代码大全

    1. `DriverManager`:它是管理JDBC驱动的服务类,主要用于加载和注册驱动,以及建立到数据库的连接。`getConnection()`方法是获取数据库连接的关键。 2. `Connection`:代表一个到数据库的物理连接,提供了创建...

    JDBC连接数据库 PPT

    JDBC 连接数据库 PPT 一些基本的连接数据库 代码

Global site tag (gtag.js) - Google Analytics