24.11.30
[实验任务一]:数据库连接
对数据库的操作一般包括连接、打开、使用、关闭等步骤,在数据库操作模板类中我们定义了connDB()、openDB()、useDB()、closeDB()四个方法分别对应这四个步骤。对于不同类型的数据库(如SQL Server和Oracle),其操作步骤都一致,只是连接数据库connDB()方法不同,现使用模板方法模式对其进行设计。
实验要求:
-
画出对应的类图;
-
提交源代码;
package org.test.ruanjiansheji.muban;
//通用数据库操作模板
abstract class AbstractDatabaseTemplate {
// 模板方法
public final void operateDatabase() {
connDB(); // 连接数据库
openDB(); // 打开数据库
useDB(); // 使用数据库
closeDB(); // 关闭数据库
}
// 具体方法,子类必须实现
protected abstract void connDB();
// 默认实现,可被子类重写
protected void openDB() {
System.out.println("打开数据库连接...");
}
protected void useDB() {
System.out.println("执行数据库操作...");
}
protected void closeDB() {
System.out.println("关闭数据库连接...");
}
}
// SQL Server 的具体实现
class SqlServerDatabase extends AbstractDatabaseTemplate {
@Override
protected void connDB() {
System.out.println("连接到 SQL Server 数据库...");
}
@Override
protected void useDB() {
System.out.println("使用 SQL Server 数据库执行查询...");
}
}
// Oracle 的具体实现
class OracleDatabase extends AbstractDatabaseTemplate {
@Override
protected void connDB() {
System.out.println("连接到 Oracle 数据库...");
}
@Override
protected void useDB() {
System.out.println("使用 Oracle 数据库执行查询...");
}
}
public class TemplateMethod {
public static void main(String[] args) {
AbstractDatabaseTemplate sqlServer = new SqlServerDatabase();
sqlServer.operateDatabase(); // 操作 SQL Server 数据库
System.out.println("----------------------------");
AbstractDatabaseTemplate oracle = new OracleDatabase();
oracle.operateDatabase(); // 操作 Oracle 数据库
}
}
- 注意编程规范。