基于组合的方式实现模板设计:
/**
* 基于组合实现模板设计模式
* @author Administrator
*
*/
public class CombineTemplate {
//链接数据库
public void beginConnection(){
System.out.println("conn success");
}
//关闭数据库的链接
public void closeConnection(){
System.out.println("close success");
}
/**
* 调用方法,传入一个钩子函数的接口
*/
public void execute(CallBack back){
this.beginConnection();
back.doInTemplate();
this.closeConnection();
}
/**
* 将要实现的方法创建在模板中
* 添加
*/
public void add(final int id){
this.execute(new CallBack(){
public void doInTemplate() {
System.out.println("add:"+id);
}});
}
/**
* 删除
* @param id
*/
public void delete(final int id){
execute(new CallBack(){
public void doInTemplate() {
System.out.println("delete:"+id);
}});
}
}
回调(钩子):
package com.svse.combinetemplate;
/**
* 接口
* @author Administrator
*
*/
public interface CallBack {
public void doInTemplate();
}
具体的实现类:
package com.svse.combinetemplate;
/**
* 基于组合实现设计模式,实现具体的功能
* @author Administrator
*
*/
public class ExtendCombineTemplate {
private CombineTemplate ct = new CombineTemplate();
public void add(int id){
ct.add(id);
}
public void delete(int id){
ct.add(id);
}
}
分享到:
相关推荐
基于Java实现的23种设计模式Demo,抽象工厂模式、建造模式、工厂方法模式、原型模式、单例模式、外观模式、适配器模式等 Java设计模式共有23种,分别为:抽象工厂模式、建造模式、工厂方法模式、原型模式、单例模式...
数据结构、算法、leetcode题目讲解,23种设计模式 全面复习 一、java 1、java基础知识 2、java容器 3、java并发 4、java虚拟机 5、java IO 二、设计模式 1. 单例模式 2. 原型模式 3. 工厂方法模式 4. 抽象工厂模式 5...
设计模式 结构模式 适配器模式 桥接模式 组合模式 装饰模式 外观模式 享元模式 代理模式 创建模式 抽象工厂模式 工厂方法模式 建造这模式 原型模式 单例模式 行为模式 责任链模式 命令模式 解释...
GoF 的《设计模式》是所有面向对象语言(C++ Java C#)的基础,只不过不同的语言将之实现得更方便地使用。 GOF 的设计模式是一座"桥" 就 Java 语言体系来说,GOF 的设计模式是 Java 基础知识和 J2EE 框架知识之间一...
但通常情况下,由于Java Bean是被容器所创建(如Tomcat)的,所以Java Bean应具有一个无参的构造器,另外,通常Java Bean还要实现Serializable接口用于实现Bean的持久性。Java Bean实际上相当于微软COM模型中的本地...
为了方便系统管理员对考生成绩的管理,在系统里系统管理员可以对考生成绩进行操作:网上成绩录入,按照各种组合方式查询成绩,修改成绩,产生成绩报表。 在系统里,系统也提供给考生管理功能,考生可以在线提问...
design-pattern-forjava 基于java版的设计模式实现。 1,抽象工厂模式,提供一个创建一系列相关或互相依赖对象的接口,而无需指定他们具体的类. 2,适配器模式:将一个类的接口转换成客户希望的另外一个接口.Adapter...
java基础汇集,各种demo测试,基于jdk1.8 基本(java基础) 集合(集合) 数据结构(datastructure) 套接字(套接字服务) 第三方(第三方-ocr-ffmpeg) 时间(日期相关) 设计模式 设计 观察者模式实际上...
系统的设计思路主要包括:分层设计:系统采用MVC设计模式,将业务逻辑、数据访问和用户界面分离,使得系统的结构清晰,易于维护。模块化设计:系统的各个功能模块独立设计,可以灵活地进行组合和扩展。安全性设计:...
exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。 19、同步和异步有何异同,在什么情况下分别使用他们?举例说明。 如果数据将在线程间共享。例如正在写的数据以后可能...
3. Web服务器:Tomcat 5.5及以上版本,配合MVC设计模式及 Hibernate开发架构; 4. 客户端运行环境:能运行IE 5以上或Netscape 5以上浏览器的操作系统,配合使用Ajax技术; 5. 客户端运行工具:目前的系统采用...
8.1.1 MVC设计模式 117 8.1.2 Struts框架工作原理 118 8.1.3 Struts框架执行流程 118 8.2 MyEclipse创建基于Struts框架的项目 119 8.2.1 创建Struts项目 119 8.2.2 Struts组件向导 121 8.2.3 Struts配置文件编辑器 ...
本次我们的B2C电子商务系统设计过程中主要用到的技术为分别为JSP、Servlet、J2EE、B/S模式,以下为各技术的简要介绍: 1.2.1 JSP Java Server Pages (JSP) 是由Sun Microsystems 公司倡导、许多公司参与一起建立的...
如何在Asp.Net1.1中实现页面模板(所谓的MasterPage技术) Tool Tip 示例(FILTER版) Tool Tip示例 (htc版) 一个.net发送HTTP数据实体的类 按键跳转以及按Enter以不同参数提交,及其他感应事件 动态控制Page页的...
SpringMVC作为一个基于MVC(模型-视图-控制器)设计模式的框架,提供了良好的请求分发和处理机制。MyBatis作为一个优秀的持久层框架,提供了方便的数据库访问和操作。 系统的数据存储采用了MySQL作为后端数据库,...
J2eeFAST是一个Java EE企业级快速开发平台,基于经典技术组合(Spring Boot,Spring MVC,Apache Shiro,MyBatis-Plus,Freemarker,Bootstrap,AdminLTE)采用经典开发模式,让初学者能够Swift进行入门并从事在线...
JCOP基于Java,JFinal开发,是一个标准java web项目,使用时不依赖任何IDE,其核心设计目标是学习简单,扩展自由.可用任何模板引擎生成一切代码,目前默认提供Java代码生成器,支持JFinal Web风格项目,不久将加入传统的...