模版方法模式

模版方法模式:

准备一个抽象类,将部分逻辑以具体方法以及具体构造函数的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现。这就是 模版方法模式的用意。

                                                                  ----阎宏的《Java与模式》一书关于中介者模式的介绍

 

模版方法使用例子:

1.ibatis Dao Template API 而言:ibatis源代码

JdbcDaoTemplate,OjbBrokerDaoTemplate,SqlMapDaoTemplate,HibernateDaoTemplate,TopLinkDaoTemplate都是抽象模板,

而DaoTemplate是这些模板的父模板,相应的实现都是应用程序中,继承相应的模板类,各自实现。

 

2.Servlet中的service()方法

Servlet接口中有5个方法,

public abstract void init(ServletConfig servletconfig) throws ServletException;

public abstract ServletConfig getServletConfig();

public abstract void service(ServletRequest servletrequest, ServletResponse servletresponse) throws ServletException, IOException;

public abstract String getServletInfo();

public abstract void destroy();

[init/service/destroy] :用于初始化......

 

Servlet接口的实现抽象类是GenericServlet,此方法仍没有实现service()方法

GenericServlet的实现类是HttpServlet,此类中实现service()方法,在此方法中,

调用了7个方法:对应7种Http请求

doGet、doHead、doPost、doPut、doDelete、doOptions、doTrace

 

当我们在开发过程中,通常回封装doPost()和doGet()方法,这也是模板方法模式的一个应用

 

 

 

你可能感兴趣的:(java,DAO,servlet,String,ibatis,service)