站内搜索: 请输入搜索关键词

当前页面: 开发资料首页Java 专题简单的数据库连接工厂实现

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

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

</td> </tr> <tr> <td width="496" height="35" valign="top" class="ArticleTeitle"> 我看过很多数据库连接的代码,大部分都存在问题,有的甚至完全不可用,这里给出一个数
据库连接工厂,给出了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
个人认为这样写不好,当然这样也没有错。

</td> <td width="188" align="center" valign="top" class="ArticleTeitle">
</td> </tr> <tr> <td height="25" colspan="2" valign="top" class="ArticleTeitle">


↑返回目录
前一篇: 从数据库中读取记录集到平面式XML文件
后一篇: ODBC数据库连接