java实现模板方法模式之数据库操作实例

package Lab24_Template;

public class dbconnect {

    public static abstract class Db { // 抽象模板方法
        public abstract void transact(); // 抽象类中的抽象方法,只有声明,没有具体的实现

        public void openDB() {
            System.out.println("打开数据库");
        }

        public void useDB() {
            System.out.println("使用数据库");
        }

        public void closeDB() {
            System.out.println("关闭数据库");
        }

        public void process() {
            this.transact();
            this.openDB();
            this.useDB();
            this.closeDB();
        }
    }

    public static class SqlServerDB extends Db { // 具体模板方法 子类 子类必须实现父类抽象方法
        public void transact() {
            System.out.println("连接SqlServer数据库");
        }
    }

    public static class OracleDB extends Db { // 具体模板方法 子类 子类必须实现父类抽象方法
        public void transact() {
            System.out.println("连接Oracle数据库");
        }
    }

    public static void main(String a[]) {
        Db dbone, dbtwo;
        dbone = new SqlServerDB();
        dbtwo = new OracleDB();
        dbone.process();
        System.out.println("---------------------------------------");
        dbtwo.process();
    }

}

posted on 2021-11-28 19:15  风中明月  阅读(128)  评论(0编辑  收藏  举报