数据访问工具类
发布时间:2020-12-12 14:31:29 所属栏目:MsSql教程 来源:网络整理
导读:package com.accphr.util;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import java.util.Properties;/** * 数据库访问工具类(使用了单例模式和工厂模式)
package com.accphr.util; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Properties; /** * 数据库访问工具类(使用了单例模式和工厂模式) */ public class DBAccess { /* 驱动程序的名字 */ private static String driver; /* 连接数据库用的URL */ private static String url; /* 用户名 */ private static String user; /* 密码 */ private static String pwd; /* DBAccess类型的一个引用,用来持有自身的一个对象 */ private static DBAccess self = null; /* 私有的构造方法,保证此类不能在外部进行实例化 */ private DBAccess() { try { Properties pros = new Properties(); // 此类用于读取配置文件config.properties pros.load(DBAccess.class.getResourceAsStream("config.properties")); driver = pros.getProperty("driver"); url = pros.getProperty("url"); user = pros.getProperty("user"); pwd = pros.getProperty("pwd"); } catch (Exception ex) { throw new RuntimeException(ex); } } /** * 返回DBAccess类的一个实例 * * @return */ public static DBAccess newInstance() { if (null == self) { self = new DBAccess(); } return self; } /** * 返回数据库连接对象 * * @return Connection */ public Connection getConnection() { try { Class.forName(driver); // 加载驱动程序 return DriverManager.getConnection(url,user,pwd); // 通过驱动程序管理器得到数据库连接对象 } catch (Exception ex) { throw new RuntimeException(ex); } } public void close(Connection conn,Statement stmt,ResultSet rs) { close(rs); close(stmt); close(conn); } public void close(Connection conn) { if (null != conn) { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } public void close(Statement stmt) { if (null != stmt) { try { stmt.close(); } catch (SQLException e) { e.printStackTrace(); } } } public void close(ResultSet rs) { if (null != rs) { try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } } } public static void main(String[] args) { Connection conn = DBAccess.newInstance().getConnection(); if (null != conn) { System.out.println("数据库连接成功!"); } else { System.out.println("数据库连接失败!"); } } }附录#oracle9i #driver=oracle.jdbc.driver.OracleDriver #url=jdbc:oracle:thin:@localhost:1521:ora9 #user=test #pwd=test #sql2005 driver=com.microsoft.sqlserver.jdbc.SQLServerDriver url=jdbc:sqlserver://localhost:1423;DatabaseName=house user=sa pwd=sa #sql2000 #driver=com.microsoft.jdbc.sqlserver.SQLServerDriver #url=jdbc:microsoft:sqlserver://localhost:1433;databaseName=unit6DB #user=sa #pwd=888888 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |