单例模式
单例模式简介
BaseDao主要完成如下工作:
(1)init()方法:负责从数据库配置文件(database.properties)中获取数据库连接的初始化参数
(2)Connection getConnection()方法:负责获取数据库连接,返回Connection实例
(3)ResultSet execute(Connection,PreparedStatement,String,Object[])方法:负责根据传入的参数完成数据更新(增.删.改)操作,返回结果集ResultSet.
(4)int execute(Connection,PreparedStatement,String,Object[])方法:负责根据传入的参数进行相应资源的关闭操作,返回boolean值
解决方案就是把读取数据库配置文件的操作提取到一个工具类(ConfigManager.java)中,并把该工具类设计为单例模式.何谓单例模式?它是23种设计模式之一,也是最常用的设计模式.顾名思义,单例模式就是系统运行期间,有且仅一个实例.它有三个必须满足的关键点
(1)一个类只有一个实例.这是满足单例模式最基本的要求,诺要满足这个关键点,只能提供私有的构造器,即保证不能随意创建该类的实例
(2)它必须自行创建这个实例.对于这个一点,正是体现了:单例模式的"有且仅有一个实例"的这一特性我们要保证唯一性,也就意味着必须要提供一个实例,那么需要他自行创建,定义一个ConfigManager类型的静态的私有对象,以便向外界提供类实例时使用
(3)它必须自行向整个系统提供这个实例.最后一点也是至关重要的,外界需要获取并使用这个单例的实例,但是由于该类的构造器是私有的,外界无法通过new去获取它的实例,那么就必须提供一个镜头的公有方法,该方法创建或者获