自定义源码
文章平均质量分 80
超大仙在努力
热爱技术,拥抱变化
展开
-
Tomcat请求源码流程分析(图解及源码注释) (六)
Tomcat源码系列:本章为Tomcat请求解析流程的第二章,主要内容为在请求转交给Coyote适配器后的流程分析原创 2020-08-18 19:44:37 · 767 阅读 · 2 评论 -
Tomcat请求源码流程分析(图解及源码注释) (五)
Tomcat源码系列:本章为Tomcat请求解析流程的第一章,主要内容为请求由Endpoint捕获,并转交给Processor处理.原创 2020-08-18 17:56:30 · 662 阅读 · 2 评论 -
DCL单例模式中的volatile解析(含图解)
对不清楚单例模式的小伙伴可以参考我的另一篇文章:八种单例模式使用,最全单例模式!(优缺点分析)在Java中单例模式存在这么一种情况如下:/** * DCL双锁校验 * 线程安全 * volatile关键字用于防止指令重排序 */class Singleton { private static volatile Singleton singleton; private Singleton() {} public static Singleton getIn原创 2020-08-18 12:14:20 · 1540 阅读 · 0 评论 -
八种单例模式使用,最全单例模式!(优缺点分析)
最全Java单例模式构建,包含优缺点分析,以及推荐使用说明.原创 2020-08-18 11:41:59 · 411 阅读 · 0 评论 -
Tomcat中LifecycleListener监听器原理分析(观察者模式的运用)
对于读过我Tomcat启动流程的小伙伴们应该清楚,在Host容器启动的过程中会激发HostConfig监听器,从而使得HostConfig可以根据对应的web.xml文件构建Context容器并加入Host中,那么HostConfig监听器到底是如何激发的呢?没有看过启动源码的小伙伴可以移步下文梳理一下过程:Tomcat启动源码流程分析(图解及源码注释) (三)Tomcat启动源码流程分析(图解及源码注释) (四)首先我们要知道无论是Engine,Host,Context,Server等等都原创 2020-08-15 11:11:51 · 1872 阅读 · 0 评论 -
Tomcat启动源码流程分析(图解及源码注释) (四)
Tomcat源码系列:本章为Tomcat初始化流程的第二章,主要内容为Connector的启动分支.原创 2020-08-15 09:56:55 · 397 阅读 · 2 评论 -
Tomcat启动源码流程分析(图解及源码注释) (三)
Tomcat源码系列:本章为Tomcat初始化流程的第一章,主要内容为Engine启动分支原创 2020-08-15 09:50:24 · 855 阅读 · 0 评论 -
Tomcat初始化源码流程分析(图解及源码注释) (二)
Tomcat源码系列:本章为Tomcat初始化流程的第二章,主要内容有Server的初始化,Engine的初始化以及Connector的初始化原创 2020-08-12 18:29:10 · 508 阅读 · 0 评论 -
Tomcat初始化源码流程分析(图解及源码注释) (一)
Tomcat源码系列:本章为Tomcat初始化流程的第一章,主要内容有Bootstrap启动类的初始化,Catalina实例的初始化,以及Server实例的初始化.原创 2020-08-12 17:55:24 · 1119 阅读 · 1 评论 -
23种设计模式UML图(附说明)
参考大话设计模式的23中UML类图,源文件下载(可由ProcessOn导入修改).原创 2020-07-31 21:03:56 · 1383 阅读 · 1 评论 -
JAVA反射实现委托模型(方法可以传入参数)
委托模式是软件设计模式中的一项基本技巧。在委托模式中,有两个对象参与处理同一个请求,接受请求的对象将请求委托给另一个对象来处理。委托模式是一项基本技巧,许多其他的模式,如状态模式、策略模式、访问者模式本质上是在更特殊的场合采用了委托模式。委托模式使得我们可以用聚合来替代继承. 在C#中,委托由delegate实现,在Java中并没有委托机制,所以我们可以选择用反射来实现委托,下面看看具体的代码.通知者(主题)实现:package 事件委托模式;import java.lang...原创 2020-07-28 16:34:05 · 450 阅读 · 0 评论 -
泛型的使用实例:构建随机的搜索二叉树(可以使用任意类型的数据)
使用此工具类注意事项: 用户需要自定义一个类,该类用作树节点TreeNode<T,V>的T泛型,自定义类中需要包含一个用于比较的数据. 用户自定义类中的数据需要实现Comparable接口. 用户自定义的类需要实现RandomValue接口(自定义接口,下图代码中以及包含)以及Comparable借口. 此工具类以及提供两个实例,以及两个实例的测试代码,可供参考. 该工具类仅供学习,如有不足或泛型使用不当,可以和我交流改进.package 二...原创 2020-07-23 16:59:26 · 308 阅读 · 0 评论