- 博客(17)
- 资源 (3)
- 收藏
- 关注
原创 设计原则
找出应用中可能需要变化之处,将他们独立出来,不需要和哪些不需要变化的代码混在一起针对接口编程,针对超类型编程,关键是利用多态多用组合,少用继承为了交互对象松耦合设计而努力最少知识原则 策略模式,让算法变化独立于使用算法客户
2010-05-23 10:51:00 404
原创 垃圾收集
9.1 为什么要使用垃圾收集减轻用户释放内存的负担能帮助程序完整性 9.2 垃圾收集的算法 任何垃圾收集器必须做的两件事情,首先,必须检测出垃圾的对象。其次,收回垃圾对象所使用的空间并还给程序
2010-05-05 19:25:00 314
原创 请求处理控制结构
[Tomcat源码系列]结构解析 3)请求处理控制结构 文章分类:Java编程一、请求处理控制结构基础 与生命期结构类似,请求处理也是一个两层的结构1.Valve:Valve是最小的处理单元,我们看看Valve的定义A Valve is a request processing componentassociated
2010-05-03 16:18:00 460
转载 生命期控制结构
[Tomcat源码系列]结构解析 2)生命期控制结构 文章分类:Java编程一、生命期控制结构基础Tomcat的生命期控制是一个两层的结构1)Lifecycle(org.apache.catalina.Lifecycle): 在前一篇中看到的各组件(Service、Connector、Engine、Host、Conte
2010-05-03 15:59:00 401
原创 总体结构
一、从范例开始 在开始分析之前,我们先使用Tomcat组件来组装一个完整的WebContainer。1)准备好目录结构 准备好如下目录结构BaseDir(C:/tomcattest/) --conf --webapps从{tomcat目录}/conf目
2010-05-03 15:31:00 414
转载 [Java性能剖析]JVM Management API
JVM本身提供了一组管理的API,通过该API,我们可以获取得到JVM内部主要运行信息,包括内存各代的数据、JVM当前所有线程及其栈相关信息等等。各种JDK自带的剖析工具,包括jps、jstack、jinfo、jstat、jmap、jconsole等,都是基于此API开发的。本篇对这部分内容进行一个详细的说明。 参考:http://java.sun.co
2010-05-03 14:24:00 1067
转载 Tomcat Context reloadabled 与 OutOfMemory(PermSpace)
我们知道,Sun JVM分代垃圾回收器把堆空间分成3块:Young Gen:年轻代,包括1个Eden区和2个Suvivor区,新创建的对象(大部分为短周期的对象)将进入这个区,虚拟机会频繁地对这个区进行垃圾回收。Old Gen:年老代,当对象在Young Gen呆地足够久(经过几次的垃圾回收仍然存在)或YoungGen空间不足时,对象将进入OldGen,由于一般是生命周期比
2010-05-03 13:36:00 711
转载 Tomcatl类加载器
一、从类加载器(ClassLoader)结构说起1.基本介绍(此部分可参见> Chapter9. Security) 顾名思义,类加载器是用于加载Java的类定义信息(.class)。需要注意的是类加载器仅在需要的才加载类定义信息,参见<<CoreJava 2 Volume II>> Chapter9. Security关于ClassLoader的说明如下
2010-05-03 11:32:00 471
转载 Connector是Tomcat最核心的组件
Connector是Tomcat最核心的组件之一,负责处理一个WebServer最核心的连接管理、Net IO、线程(可选)、协议解析和处理的工作。一、连接器介绍在开始Connector探索之路之前,先看看Connector几个关键字NIO:Tomcat可以利用Java比较新的NIO技术,提升高并发下的Socket性能AJP:Apache JServProtocol
2010-05-03 11:08:00 1567
原创 默认连接(二)
请求对象 默认连接器哩变得HTTP请求对象指代org.apache.catalina.Request接口。这个接口被类RequestBase直接实现了,也是HttpRequest的父接口。最终的实现是继承于HttpRequest的HttpRequestImpl。像第3章一样,有几个facade类:RequestFacade和HttpRequestFacade。Request接口
2010-05-03 10:55:00 636
原创 Tomcat的默认连接器
第四章:Tomcat的默认连接器概要 第3章的连接器运行良好,可以完善以获得更好的性能。但是,它只是作为一个教育工具,设计来介绍Tomcat4的默认连接器用的。理解第3章中的连接器是理解Tomcat4的默认连接器的关键所在。现在,在第4章中将通过剖析Tomcat4的默认连接器的代码,讨论需要什么来创建一个真实的Tomcat连接器。注意:本章中提及的“默认连接器”
2010-05-03 10:45:00 770
原创 创建一个HttpResponse对象
创建一个HttpResponse对象 HttpResponse类实现了javax.servlet.http.HttpServletResponse。跟随它的是一个叫做HttpResponseFacade的façade类。Figure 3.3显示了HttpResponse类和它的相关类的UML图。 在第2章中,你使用的是一个部分实现的HttpResponse
2010-05-03 10:12:00 12688 2
原创 请求信息解析
HttpRequest类实现了javax.servlet.http.HttpServletRequest。跟随它的是一个叫做HttpRequestFacade的facade类。Figure 3.2显示了HttpRequest类和它的相关类的UML图。 HttpRequest类的很多方法都留空(你需要等到第4章才会完全实现),但是servlet程序员已经可以从到来的HT
2010-05-03 09:26:00 859
原创 启动应用程序
启动应用程序 你可以从ex03.pyrmont.startup.Bootstrap类来启动应用程序。这个类在Listing 3.1中给出。 Listing 3.1: Bootstrap类package ex03.pyrmont.startup;import ex03.pyrmont.connector.http.HttpConnector;publi
2010-05-03 08:33:00 361
原创 第3章:连接器
第3章:连接器概要 在介绍中提到,Catalina中有两个主要的模块:连接器和容器。本章中你将会写一个可以创建更好的请求和响应对象的连接器,用来改进第2章中的程序。一个符合Servlet2.3和2.4规范的连接器必须创建javax.servlet.http.HttpServletRequest和javax.servlet.http.HttpServletRespon
2010-05-03 08:00:00 460
原创 (一) 源码编译和导入Eclipse
http://www.blogjava.net/Jack2007/archive/2008/05/23/202485.html14:53:30 (一)源码编译和导入Eclipse 由于现在项目相对比较轻松,而且项目是研究SOA和WebService的,因此这里我要对一些相关的开源技术做一些研究。接下来我要写的文章是Tomcat源码系列的文章,文章(一)是
2010-05-02 23:27:00 521
原创 java 虚拟机深入研究
http://www.blogjava.net/Jack2007/archive/2008/05/23/202485.html14:53:30
2010-05-02 14:48:00 390
serlet技术 详解
2008-12-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人