随笔分类 -  设计模式

摘要:前言 此篇随笔记录《How Tomcat works》中关于Lifecycle接口的相关总结 Lifecycle接口的主要目的 核心:统一。 已知Tomcat的卡特琳娜(Catalina)由许多组件构成。当Catalina启动的时候,这些组件也要跟着一起启动,并且当Catalina关闭的时候,这些组 阅读全文
posted @ 2019-04-01 22:49 猫毛·波拿巴 阅读(878) 评论(0) 推荐(0) 编辑
摘要:前言 做后台的,Filter肯定没少配置,但是知晓其原理的可能不多。在这之前我也不懂,但这并不影响业务开发,同时也有其他的知识要学,所以一直就没看。这阵子有点闲,刚好在看《How Tomcat Works》的PipeLine相关内容。索性好好梳理一下FilterChain相关的知识。 类图 Filt 阅读全文
posted @ 2019-03-21 21:22 猫毛·波拿巴 阅读(4082) 评论(3) 推荐(2) 编辑
摘要:首先,我们得清楚为何要解耦? 耦合的坏处就是,牵一发而动全身,比如,当我更改了类A或其子类的时候,类B也要进行修改。这里,解除耦合,就意味着,即使你Receiver怎么改,添加了多少,删除了多少。我Invoker都不需要做什么改动。 有人会说,这不是很好办吗,我定义一个接口,每个Receiver都实 阅读全文
posted @ 2018-10-28 03:00 猫毛·波拿巴 阅读(553) 评论(0) 推荐(0) 编辑
摘要:实现线程任务有两种方式,一种是创建Runnable/Callable对象,传递给Thread。另一种是子类重写Thread的run方法。 我觉得前一种像极了命令模式,或者说应该是命令模式的一个使用案例。 相似如下: (1)Runnable 接口,只定义一个"()V"(表示无参,返回值为void)的方 阅读全文
posted @ 2018-10-28 02:22 猫毛·波拿巴 阅读(748) 评论(1) 推荐(1) 编辑
摘要:什么是策略模式? 个人认为,设计模式的定义是比较晦涩抽象的,了解设计模式的最合适的方法就是先看看它的使用场景和相关案例,Java的JDK中就有此设计模式的体现。先讲一个比较简单的,那就是File的文件过滤机制。File类中有个list(FilenameFilter filter)的方法用于过滤Fil 阅读全文
posted @ 2018-10-19 16:53 猫毛·波拿巴 阅读(211) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示