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