实验 24:模板方法模式

.

软件设计                  石家庄铁道大学信息学院

 

实验 24:模板方法模式

本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:

1、理解模板方法模式的动机,掌握该模式的结构;

2、能够利用模板方法模式解决实际问题。

 
   

 


[实验任务一]:数据库连接

对数据库的操作一般包括连接、打开、使用、关闭等步骤,在数据库操作模板类中我们定义了connDB()、openDB()、useDB()、closeDB()四个方法分别对应这四个步骤。对于不同类型的数据库(如SQL Server和Oracle),其操作步骤都一致,只是连接数据库connDB()方法不同,现使用模板方法模式对其进行设计。

实验要求:

1.提交源代码;

2.注意编程规范。

 

 

package Db;

// 数据库操作的模板类
abstract class DatabaseTemplate {

    // 模板方法,定义数据库操作的通用流程
    public void operateDatabase() {
        connDB();
        openDB();
        useDB();
        closeDB();
    }

    // 连接数据库的抽象方法,延迟到子类实现
    abstract void connDB();

    // 打开数据库的通用实现
    void openDB() {
        System.out.println("打开数据库连接");
    }

    // 使用数据库的通用实现
    void useDB() {
        System.out.println("使用数据库");
    }

    // 关闭数据库的通用实现
    void closeDB() {
        System.out.println("关闭数据库连接");
    }
}

// SQL Server数据库操作的具体子类
class SqlServerDatabase extends DatabaseTemplate {

    // 实现连接SQL Server数据库的具体步骤
    @Override
    void connDB() {
        System.out.println("连接到 SQL Server 数据库");
        // 具体的连接实现
    }
}

// Oracle数据库操作的具体子类
class OracleDatabase extends DatabaseTemplate {

    // 实现连接Oracle数据库的具体步骤
    @Override
    void connDB() {
        System.out.println("连接到 Oracle 数据库");
        // 具体的连接实现
    }
}

// 测试
class Main {
    public static void main(String[] args) {
        // 使用SQL Server数据库操作
        DatabaseTemplate sqlServerDB = new SqlServerDatabase();
        sqlServerDB.operateDatabase();

        System.out.println();

        // 使用Oracle数据库操作
        DatabaseTemplate oracleDB = new OracleDatabase();
        oracleDB.operateDatabase();
    }
}

 

 

 

posted @ 2023-12-03 23:19  花伤错零  阅读(43)  评论(0)    收藏  举报