`
ss1
  • 浏览: 77649 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
文章列表
How to config and run The Apache Jakarta Tomcat 5? You may find something useful from this documentation. author: ZJ 2007-3-4 Blog: [url]http://zhangjunhd.blog.51cto.com/[/url] 1.Tomcat5.0 目录结构     Tomcat下有9个目录,分别是bin,common,conf,logs,server,shared,temp,webapps,work 目录,现在对每一目录做介绍。Tom ...
第一次接触到“生命周期”这个词汇,是在软件工程的课程上,“软件的生命周期”,当时也是觉得有点玄,但还算可以理解:软件从需求分析到最后没人用,就像人的一生(人的“需求分析”是什么呢?这是个哲学问题...) 扯远了,回到tomcat。tomcat的“生命周期”非常简单,说白了是一个接口:org.apache.catalina.Lifecycle,内容如下: public interface Lifecycle {    public static final String START_EVENT = "start";    public static fina ...
第四章:容器初探 接触JAVA EE以来,最初对“容器”一词满头雾水、无比崇拜,后来听到耳朵长茧,一直觉得这个词的定义有点太广了,很多情况下不管沾没沾点关系的都往上靠,力图通过 此术语使自己显得“专业”一些(老实说我写文档也这么做过)。但不论如何,发明这个计算机术语的人还是相当牛的,充分体现了JAVA EE“分层”的思想。 唯一不爽的是,一直以来都处于“容器”的黑盒之外,更加上那些大厂商对自己的JAVA EE“容器”产品的神乎其神的吹嘘宣传,一直没法想象外国那些鬼佬怎么就这么牛能做出这么厉害的东西,我们只有乖乖使用的份?还好有开源,还好有这本 《How Tomcat Wo ...
Chapter 4: Tomcat default connector 何为default Connector?其实这里指的是tomcat最初设计时使用的Connector,尽管问题多多,现在已经被coyote所取代,但作为教学用例,default Connector仍然不失为一个优秀的组件,值得一学! 这一章的目的 ...
看了这本书的头三章,写得非常好,可谓深入浅出将tomcat分析的很透彻。虽然书中所讲述的tomcat是“简化版”,但内容也不算少,越到后面代码越多,也越复杂。为了加深印象,遂决定写读书笔记,“好记性不如烂笔头”,说不定还能方便他人。 闲话少说,直入主题: Chapter One:A Simple Web Server 第一章是一个非常简单的web server,主要目的在于让读者了解Java的web server 编程模式。此外还讲了一下Http协议的一些基础知识,譬如http请求和响应的格式。 基本的web server,就是用java.net.ServerSocke ...
Chapter Three:Connector tomcat的Connector名字叫做Coyote,我之前也写了几篇关于coyote的博客,不过在看了第三章后,才对tomcat的 Connector有了更加深入的认识。需要说明的是,这一章的Connector只是一个简化版,而第四章介绍的也只是“默认”(旧版本)的 Tomcat的Connector,正因为“默认”的Connector性能不佳,才产生了后来的coyote,这是后话。 StringManager 在讲述连接器前,首先介绍一个tomcat内部使用频率非常高的工具类——StringManager,简称sm( ...
嘿嘿,批处理的介绍。不光可以提高自己动手能力还能学到很多知识,转帖一份,欢迎大家把优秀的批处理跟帖! 批处理的介绍 扩展名是bat(在nt/2000/xp/2003下也可以是cmd)的文件就是批处理文件。 首先批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好象我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件。 其次,批处理文件是一种简单的程序,可以通过条件语句(if)和流程控制语句(goto)来控制命令运行的流程,在批处理中也可以使 ...
   Catalina.bat是tomcat所有脚本中最重要的脚本,完成几乎所有的tomcat操作。如启动,关闭等等,都是由catalina.bat脚本来完成的。接下来,我将对Tomcat catalina.bat脚本进行分析。     首先省去catalina.bat开头诸多注解,这些注解主要是讲解各个变量是干什么的。需要的话,自己看下英文就可以了。这里就不翻译了。 rem Guess CATALINA_HOME if not defined  查看是否在tomcat目录下,与startup.bat里相同,不解释了。需要的话可以看我的另一篇博客。 set CURRENT_DIR=%cd% ...
四、 Tomcat 中最简单的 MBean 下面我们打开 Tomcat 源代码,看看 Tomcat 中最简单的一个 MBean 。在 Tomcat 的启动引导类 Bootstrap.java 的 172 到 187 行,我们可以看到如下代码: ClassLoader classLoader = ClassLoaderFactory.createClassLoader (locations, types, parent); // Retrieving MBean server MBeanServer mBeanServer = ...
三、 Tomcat 中的 JMX 通过上面 JMX 的简单介绍和举例,我们对 JMX 有了一个整体概念。现在我们就来查看一下 JMX 在 Tomcat 中的应用。首先,我们使用 JConsole 查看一下 Tomcat 中有哪些 MBeans 。 3.1 首先,请在 Eclipse 中启动 Tomcat ,在虚拟机参数中,设置下面几个参数: -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.manage ...
下面,我们举一个简单的例子,理解一下 JMX 中中的各个概念。我们家有一个中央热水系统 (Central Heater System) ,它是我们家的一个资源,现在我们想通过 JMI 进行管理。现有的代码如下所示,当然,为简单起见,我们略去了一些 JNI 调用代码,因为厂家提供的 API 是用 C 语言写的。 a) 热水器接口 ( CentralHeaterInf .java ) 的现有代码: package carl.test.jmx; /** * The interface of ...
一、 JMX 简单介绍 Tomcat 从 5.0 版本开始引入 JMX ,力图使 JMX 成为 Tomcat 未来版本的管理工具和平台。首先,让我们来对 JMX 做一个简单了解。 JMX 是 Java Management Extension 的缩写,可译为 Java 管理工具扩展,扩展的意思就是 JMX 不包含在标准的 J2SE 中,我们必须要另外下载 JMX RI 的实现。不过,这种把 JMX 排除在 J2SE 之外的情况已经成为历史了, J2SE5.0 和 J2SE6.0 都已经包含了
在上篇文章中,我们已经成功将Tomcat6.0 的源代码导入到 Eclipse IDE 中。现在我们就开始学习 Tomcat 源码。 Tomcat 源代码共有 1000 多个 java 类,代码行数大约 28 万到 30 万行左右。从项目规模上说,可算得上是一个中型项目。要学习理解 Tomcat 源代码,我们有多种办法可行。最原始的一种办法就是,打开 Debugger ,逐行跟踪,看看 Tomcat 如何启动,如何处理客户端请求,如何编译动态 jsp 页面。第二种办法是利用逆向工程,把 Tomcat 的总体类图先描绘出来,然后再结合 seque ...
下面,我们重点针对 Catalina 子模块,熟悉Tomcat的几个关键组件。 (1)   服务器 (Server)   在 Tomcat 中,服务器代表整个 J2EE 容器,所有的服务及服务上下文均包含在服务器内。我们打开 Tomcat 源代码,可以看到 or ...
如果一切顺利,我们就可以看到非常熟悉的 Tomcat 窗口 。但是,由于各种原因,我们可能会碰到一些问题, 下面 就具体分析一下 Tomcat 不能正常启动的原因 。 3.1 环境变量设置问题 如果机器上没有安装 JDK 或者环境变量 JAVA_HOME 或 CATALINA_HOME 没有设置正确, Tomcat 就不能正常启动。 3.1.1 下面 这个错误对话框的意思是 Windows 不能发现 “-Djava.endorsed.dirs=” 命令,下面背景的黑窗口的错误是 JAVA_HOME ...
Global site tag (gtag.js) - Google Analytics