随笔分类 - tomcat等深入学习
摘要:http://tomcat.apache.org/tomcat-7.0-doc/architecture/startup/serverStartup.txt Licensed to the Apache Software Foundation (ASF) under one or more co...
阅读全文
摘要:tomcat 7自带很多junit测试用例,可以帮助我们窥探源码的秘密。以下使用来测试类加载器的一个测试用例。类加载器也是对象,他们用来将类从类从。class文件加载到虚拟机,这些已经讲了很多,深入jvm中说的很详细,什么双亲委派模型,在书中还以tomcat为例讲解。/* * Licensed to...
阅读全文
摘要:。Http11Protocol是阻塞式IO的实现,上图的几个方法是它的生命周期相关的方法。
阅读全文
摘要:这个适配器类只讲2个方法,构造方法中我们看到一个适配器对象有自己关联的连接器类。其中Service的重要任务就是讲客户端端请求交给容器。public void service(org.apache.coyote.Request req, org.apac...
阅读全文
摘要:这个类图是本人截取的最重要的类的方法和属性。其中ProtocalHandler是协议处理器,tomcat支持的协议以下方法可以看到。不同协议实现了不同的ProtocalHandler类。public void setProtocol(String protocol) { if (Apr...
阅读全文
摘要:RequestHander是一个抽象类,是一个线程。它封装了一个Socket。代码不难;package org.simpleHTTPServer;import java.io.IOException;import java.net.Socket;/** * Handling Network Sock...
阅读全文
摘要:http://www.cnblogs.com/hansongjiang/p/4213491.html从代码中我们看到SimpleHttpServer这个类直接依赖4个类,但是最重要的类,当属其属性,我们研究的时候,重点研究它依赖的属性类。也就是ServerMultiThreadWordkers,其他...
阅读全文
摘要:如何分析一个稍微大点的源码呢? 静态分析除了看代码,就是 uml图,UML虽然在书本类与类之间的关系很复杂,可能要一本书,但是最核心的其实很简单;(1)继承 extends(2)实现接口 implements以上两个没啥说的,很easy.(3)关联和依赖,这两者我一块说,不区分。简单来说,就是当前类...
阅读全文
摘要:闲来没事,分析一下一个简单的HttpServergithub地址:https://github.com/Filirom1/SimpleHTTPServer实现的功能很简单就是一个FTP服务器默认情况下,用户输入loclhost:8000就可以下载目录下文件,虽然不算大,但是作者写的还是很规范的。看效...
阅读全文
摘要:连接器的核心功能,本文去除非核心功能,留下整个程序的框架,便于理解。1、接受连接请求2.创建request,和response.3.调用容器对应的Invoke方法,首先看类的依赖结构。1.Connetor 构造方法,根据具体的协议名字,创建协议处理器,主要有NIO,BIO,AJP,协议。如果要自定义...
阅读全文
摘要:package cn.edu.sss.httpServer;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWri...
阅读全文
摘要:1 tringBuilder response =new StringBuilder(); 2 //1) HTTP协议版本、状态代码、描述 3 response.append("HTTP/1.1").append(BLANK).append("20...
阅读全文

浙公网安备 33010602011771号