`
jqjbpxs
  • 浏览: 6186 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

JDBC的单例模式

阅读更多
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

/**
*
*
*
*/
public final class JDBCSingleton  {

private String url = "jdbc:mysql://localhost:3306/jdbc";

private String username = "root";

private String password = "root";

// 构造函数私有
private JDBCUtilSingle() {
}

// 构造私有实例
private static JDBCUtilSingle instance = null;

public static JDBCUtilSingle getInstance() {
  //延迟加载 
  if (instance == null) {
   //加锁 防止线程并发
   synchronized (JDBCUtilSingle.class) {
    //必须有的判断
    if(instance == null){
     instance = new JDBCUtilSingle();
    }    
   }  
  }
  return instance;
}

// 注册驱动
static {
  try {
   Class.forName("com.mysql.jdbc.Driver");
  } catch (ClassNotFoundException e) {
   throw new ExceptionInInitializerError(e);
  }
}

// 获取连接
public Connection getConnection() throws SQLException {
  return DriverManager.getConnection(instance.url, instance.username,
    instance.password);
}

// 释放资源
public static void free(ResultSet rs, Statement stmt, Connection conn) {
  try {
   if (rs != null) {
    rs.close();
   }
  } catch (SQLException e) {
   e.printStackTrace();
  } finally {
   try {
    if (stmt != null) {
     stmt.close();
    }
   } catch (SQLException e) {
    e.printStackTrace();
   } finally {
    try {
     if (conn != null) {
      conn.close();
     }
    } catch (SQLException e) {
     e.printStackTrace();
    }
   }
  }
}
}

分享到:
评论
1 楼 taoge2121 2011-09-20  
不错,不错!

相关推荐

    Oracle jdbc 单例 工具类

    本示例中的"Oracle jdbc 单例 工具类"着重讨论了单例模式的应用,单例模式是一种设计模式,它确保一个类只有一个实例,并提供一个全局访问点。在数据库连接管理中,使用单例模式可以避免频繁创建和关闭连接,提高...

    项目中用到的jdbc连接 单例模式

    * JDBCConnection for Singleton * 双重检查加锁方法,由于JVM内部的问题,该方法还是有漏洞的。 * 假设线程1进入到步骤2,执行步骤3未完成,会先将instance设为非null值。 * 这时候线程2会在判断instance==null...

    Java自定义连接池,单例模式

    这些方法的实现会依赖于数据库连接池的API,如JDBC的DataSource接口,以及单例模式下的全局连接池实例。 总结起来,Java自定义连接池和单例模式的结合,可以创建一个高效、稳定的数据库访问层。通过BaseDao类,我们...

    单例模式----数据库连接池管理类的应用

    单例模式是一种常用的软件设计模式,它保证一个类只有一个实例,并提供一个全局访问点。在IT行业中,尤其是在处理资源密集型任务如数据库连接时,单例模式被广泛应用。数据库连接池就是这种应用的一个典型例子。 ...

    单例模式下的登录界面

    根据提供的信息,我们可以深入探讨单例模式下的登录界面设计与实现。这主要涉及两个核心方面:一是使用单例模式管理数据库连接(通过`DBUtil`类实现),二是设计登录界面并处理登录逻辑(通过`LoginForm`类实现)。 ...

    java单例模式连接数据库源码

    Java单例模式是一种设计模式,它保证一个类只有一个实例,并提供一个全局访问点。在数据库连接管理中,使用单例模式能有效控制资源,避免频繁创建和关闭数据库连接导致的性能损失和资源浪费。以下是对Java单例模式...

    配置文件+类加载器(单例模式)连接数据库

    这里我们关注的是如何使用配置文件、类加载器以及单例模式来高效、稳定地管理数据库连接。Oracle数据库是一种广泛使用的商业关系型数据库系统,尤其适用于大型企业级应用。下面将详细阐述这些知识点。 首先,**配置...

    java单例模式的登录界面

    **单例模式**是一种常用的软件设计模式,它保证一个类只有一个实例,并提供一个全局访问点。这种模式通常用于控制资源的访问,比如数据库连接、线程池等。 #### 特点: - **唯一性**:确保在整个程序执行期间,只...

    设计模式之单例模式

    ### 设计模式之单例模式 #### 概述 单例模式(Singleton Pattern)是软件设计模式中的一个重要组成部分,属于创建型模式之一。它保证一个类仅有一个实例,并提供一个全局访问点。单例模式的核心在于确保某个类只有...

    单例模式与工厂模式.docx

    【单例模式】 单例模式是一种常用的软件设计模式,它的主要目标是确保一个类在整个应用程序中只有一个实例,并提供全局访问点。单例模式的核心特点包括: 1. **唯一实例**:保证类只有一个实例存在,避免资源浪费...

    jdbc连接工具类 单例连接模式,进度1

    具体实现方式可能在名为“jdbc工具类连接单例模式0914”的文件中详细描述,包括如何初始化连接池,如何处理并发场景下的连接获取与释放,以及可能的异常处理机制。 总之,通过结合JDBC连接工具类和单例设计模式,这...

    java模式之单例模式.doc

    单例模式是面向对象设计中的一种经典模式,其核心思想是限制类的实例化次数,确保在整个应用程序中只有一个实例存在。这种模式常用于资源管理、全局配置或需要跨多个类共享相同状态的情况。 单例模式的特点如下: 1...

    java 单例模式(饿汉模式与懒汉模式).docx

    这种模式在资源管理、缓存、日志记录等场景中广泛应用,例如在 JDBC 连接数据库时,通常会采用单例模式来管理数据库连接。 单例模式有两种常见的实现方式:饿汉模式和懒汉模式。 1. **饿汉模式**: - 饿汉模式的...

    【ASP.NET编程知识】java 单例模式(饿汉模式与懒汉模式).docx

    Java 单例模式是一种常用的软件设计模式,它的核心思想是确保一个类只有一个实例,并提供一个全局访问点。这种模式在 ASP.NET 编程中同样适用,尤其是在需要频繁创建和销毁对象时,如与数据库交互的 JDBC 连接管理。...

    java 单例模式(饿汉模式与懒汉模式)

    单例模式常用于JDBC链接数据库,例如,一个应用程序可能需要多个数据库连接,但是我们只需要一个数据库连接对象,使用单例模式可以确保只有一个数据库连接对象。 单例模式的优点 单例模式的优点是: * 控制类的...

    JNDI连接池+单例模式+文件上传

    单例模式则是一种设计模式,确保一个类只有一个实例并提供全局访问点,常用于控制共享资源的访问,如连接池。 首先,让我们详细了解一下JNDI连接池。JNDI主要负责将逻辑名称映射到物理资源,如数据库连接。在Web...

    JDBC的连接实例 单子模式的写法

    ### JDBC的连接实例与单例模式的写法详解 在Java开发中,JDBC(Java Database Connectivity)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。本文将...

    JDBC笔记.docx

    本资源摘要信息主要介绍了 Java 数据库连接(JDBC)的相关知识,包括单例模式、JDBC 概述、JDBC 实现原理、JDBC 开发主要类和 JDBC 开发步骤等内容。 单例模式 单例模式是一种常用的软件设计模式,通过单例模式...

    宠物医院,应用MVC模式!

    DAO层会利用JDBC(Java Database Connectivity)接口与数据库进行通信,执行CRUD(Create、Read、Update、Delete)操作。 7. 自定义扩展: 你提到在前人基础上进行了部分改进,这可能包括但不限于优化性能、增加新...

Global site tag (gtag.js) - Google Analytics