el getHandlerLevel() {
//设置自己的处理级别
return null;
在处理者中涉及三个类:Level类负责定义请求和处理级别,Request类负责封装请求,Response负责封装链中返回的结果,该三个类都需要根据业务产生,读者可以在实际应用中完成相关的业务填充,其框架代码如代码清单16-16所示。
代码清单16-16 模式中有关框架代码
public class Level {
//定义一个请求和处理等级
public class Request {
//请求的等级
public Level getRequestLevel() {
return null;
public class Response {
//处理者返回的数据
在场景类或高层模块中对链进行组装,并传递请求,返回结果,如代码清单16-17所示。
代码清单16-17 场景类
public class Client {
public static void main(String[] args) {
//声明所有的处理节点
Handler handler1 = new ConcreteHandler1();
Handler handler2 = new ConcreteHandler2();
Handler handler3 = new ConcreteHandler3();
//设置链中的阶段顺序1-->2-->3handler1.setNext(handler2);
handler2.setNext(handler3);
//提交请求,返回结果
Response response = handler1.handlerMessage(new Request());
在实际应用中,一般会有一个封装类对责任模式进行封装,也就是替代Client类,直接返回链中的第一个处理者,具体链的设置不需要高层次模块关系,这样,更简化了高层次模块的调用,减少模块间的耦合,提高系统的灵活性。
更多内容加载中...请稍候...
若您看到此段落,代表章节内容加载失败,请关闭浏览器的阅读模式、畅读模式、小说模式,以及关闭广告屏蔽功能,或复制网址到其他浏览器阅读!