满足开闭原则的JDBCUtils~

简介: 满足开闭原则的JDBCUtils~

我们都知道开闭原则即为对修改关闭,对拓展开放,那么对于实现既能通过DriverManager连接数据库,也能实现使用c3P0连接数据库,连接数据库的方式即为可变点,我们只需要使用抽象类或者接口封装可变点,再将可变点的每一个具体实现方式用一个类去描述


封装可变点:获取连接对象

package JDBC;
import java.sql.Connection;
import java.sql.SQLException;
public  abstract  class AbstractJDBCUtils {
    public abstract Connection getConnection() throws SQLException;//用于定义获取连接对象的抽象方法
    //关闭资源的方法
    .........
}

具体实现方式1:通过c3p0数据库连接池获取连接对象

package JDBC;
import com.mchange.v2.c3p0.ComboPooledDataSource;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.SQLException;
public class JDBCFromC3p0Source extends AbstractJDBCUtils{
    //通过使用c3p0获取连接对象的方法
    .......
    }
}

具体实现方式2:通过DriverManager获取连接对象

package JDBC;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class JDBCFromDriverManager extends AbstractJDBCUtils{
    @Override
    public Connection getConnection() throws SQLException {
       //通过DriverManager获取连接对象的方法
    }
}
相关文章
|
Java 数据库连接 数据库
JDBC学习(三):封装工具类JDBCUtils类
为了以后方便进行数据库连接、数据库关闭、还有后面的连接池的操作等功能,现在将功能封装到JDBCUtils类当中,作为自己的一个工具箱。
396 0
|
4月前
|
设计模式
设计模式-工厂模式 Factory Pattern(简单工厂、工厂方法、抽象工厂)
这篇文章详细解释了工厂模式,包括简单工厂、工厂方法和抽象工厂三种类型。每种模式都通过代码示例展示了其应用场景和实现方法,并比较了它们之间的差异。简单工厂模式通过一个工厂类来创建各种产品;工厂方法模式通过定义一个创建对象的接口,由子类决定实例化哪个类;抽象工厂模式提供一个创建相关或依赖对象家族的接口,而不需要明确指定具体类。
设计模式-工厂模式 Factory Pattern(简单工厂、工厂方法、抽象工厂)
|
8月前
|
设计模式
设计模式-简单工厂和工厂方法
设计模式-简单工厂和工厂方法
|
8月前
创建型 简单工厂(工厂方法)模式
创建型 简单工厂(工厂方法)模式
64 1
|
8月前
|
设计模式 C#
C#反射机制实现开闭原则的简单工厂模式
C#反射机制实现开闭原则的简单工厂模式
65 0
|
设计模式 Java
设计模式之工厂模式(简单工厂、工厂方法、抽象工厂)
设计模式之工厂模式(简单工厂、工厂方法、抽象工厂)
83 0
|
设计模式
GOF23之单例模式(一)
GOF23之单例模式(一)
GOF23之单例模式(一)
|
设计模式
设计模式(10) -- 工厂设计模式(简单工厂,工厂方法,抽象工厂模式)(上)
设计模式(10) -- 工厂设计模式(简单工厂,工厂方法,抽象工厂模式)(上)
115 0
设计模式(10) -- 工厂设计模式(简单工厂,工厂方法,抽象工厂模式)(上)
|
设计模式 Java
设计模式(10) -- 工厂设计模式(简单工厂,工厂方法,抽象工厂模式)(下)
设计模式(10) -- 工厂设计模式(简单工厂,工厂方法,抽象工厂模式)(下)
132 0
设计模式(10) -- 工厂设计模式(简单工厂,工厂方法,抽象工厂模式)(下)
|
设计模式 安全 Java
【设计模式】简单工厂模式/静态工厂模式
【设计模式】简单工厂模式/静态工厂模式讲解与代码实例
【设计模式】简单工厂模式/静态工厂模式