简单的数据库连接工厂实现

原创 2004年09月24日 12:26:00

我看过很多数据库连接的代码,大部分都存在问题,有的甚至完全不可用,这里给出一个数据库连接工厂,给出了jdbc1和jdbc2的实现,仅供参考!

public class ConnectionFactory_JDBC1{
   private static String url="jdbc:oracle:thin:@218.12.7.35:1521:myorcl";
   private static String user="developer";
   private static String password="developer";
   static{
     try{
       Class.forName("oracle.jdbc.driver.OracleDriver");
     }
     catch(ClassNotFoundException e){
       throw new RuntimeException("无法加载数据库驱动!");
     }
   }
   static Connection getConnection() throws SQLException {
     return DriverManager.getConnection(url,user,password);
   }
   public static void closeConnection(Connection conn){
     if (conn != null) {
       try {
         conn.close();
       }
       catch (SQLException e) {
          //没有必要处理
       }
     }
  }
}


上面连接的是oracle数据库,当然这里用户名和密码以及url你也可以通过配置文件获得,虽然只有短短的几行
代码,对于新手,要完全理解也不是很容易的事,如果可能尽量使用JDBC2方法。

public class ConnectionFactory_JDBC2{
   private static String dbName="jdbc/mydb";
   private static DataSource ds;
    static{
     try{
       Context ctx=new InitialContext();
       ds = (DataSource)ctx.lookup(dbName);
     }
     catch(NamingException e){
       throw new RuntimeException("无法获得数据源!");
     }
   }
   public static Connection getConnection() throws SQLException {
     return ds.getConnection();
   }
   public static void closeConnection(Connection conn){
     if (conn != null) {
       try {
         conn.close();
       }
       catch (SQLException e) {
          //没有必要处理
       }
     }
  }
}

上面只是提供一个连接工厂,你必须自己关闭数据库连接,这里的closeConnection方法先判断是否为空是必要的。你也许觉得可以这样写更简洁:
   try{ conn.close();}
   catch(Exception e) {}; //同时处理了NullPointerExceptio
个人认为这样写不好,当然这样也没有错。

 

工厂数据管理系统

工厂数据管理系统 目录 工厂数据管理系统 目录 背景简介 功能实现 数据库设计 窗体设计 具体实现 登录面板 主面板 心得总结 背景简介 程序主要功能:管理一条有多...
  • qq_36084640
  • qq_36084640
  • 2017年04月21日 23:57
  • 403

Java工厂模式JDBC连接数据库的方式

学JAVA也有一段时间了,对于
  • u013005258
  • u013005258
  • 2014年08月18日 17:41
  • 3132

spring 结合 redis 正确从jedisConnectionFactory获取Jedis实例

网上流传着这样一种spring结合redis的例子,从jedisConnectionFactory获取Jedis实例。其他部分忽略只看RedisService,这样获取jedis实例存在很多问题。 这...
  • tiantiandjava
  • tiantiandjava
  • 2015年01月20日 10:18
  • 39238

redis 集群配置

spring 和redis的配置 参照 http://blog.csdn.net/u013132051/article/details/53765344 文章配置成功 记录一下: 1、jar包的...
  • hao007cn
  • hao007cn
  • 2017年12月27日 15:10
  • 41

工厂模式连接数据库

在项目中通常可能会使用不同的数据源,可能是SQL Server也可能是ACCESS或者是Oracle,那么如何保证在使用不同数据源的时候,使项目代码更改的代价最小呢?对,使用工厂模式.在Net1.1的...
  • zhangjianying
  • zhangjianying
  • 2006年03月06日 22:56
  • 1478

.net用工厂模式开发多数据库连接类

用工厂模式开发多数据库连接类,是工厂模式最好的应用方式,也是很多初级使用设计模式的程序员都会涉及到的,下面是具体代码:A、创建一个类库,里面有如下这些类一、设计一个抽象类using System;us...
  • lynnlin1122
  • lynnlin1122
  • 2008年04月12日 17:34
  • 2486

简单的数据库连接工厂实现

我看过很多数据库连接的代码,大部分都存在问题,有的甚至完全不可用,这里给出一个数据库连接工厂,给出了jdbc1和jdbc2的实现,仅供参考!public class ConnectionFactory...
  • treeroot
  • treeroot
  • 2004年09月24日 12:26
  • 3124

c#实现简单工厂—数据库连接

通过简单factory,把抽象类——数据库连接,实现为针对不同数据库(sqlserver、oracle等)的数据连接子类,并在子类实现对数据集的填充、执行各种sql语句的方法。数据连接工厂类using...
  • firstaking
  • firstaking
  • 2007年06月10日 15:26
  • 2783

数据库连接工厂

package com.jikexueyuan.util; import java.io.InputStream; import java.sql.Connection; import java.s...
  • mrbourne
  • mrbourne
  • 2016年05月15日 16:59
  • 210

oracle常见为题汇总,以及一个简单数据连接操作工厂

本人软件环境:win8.1 64位操作系统,vs2013,安装好了与oracle数据库对应的客户端               连接oracle数据库、以及操作数据库 1.使用IIS建立网站,浏览...
  • lpftobetheone
  • lpftobetheone
  • 2014年02月19日 13:15
  • 1595
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:简单的数据库连接工厂实现
举报原因:
原因补充:

(最多只允许输入30个字)