Tomcat 基础知识

一, 理论部分
1,介绍
最初是由Sun的软件构架师詹姆斯·邓肯·戴维森开发的 。后来他帮助将其变为开源项目,并由Sun贡献给软件基金会 。由于大部分开源项目O'都会出一本相关的书,并且将其封面设计成某个动物的素描,因此他希望将此项目以一个动物的名字命名 。因为他希望这种动物能够自己照顾自己,最终,他将其命名为(英语公猫或其他雄性猫科动物) 。而O'出版的介绍的书籍(ISBN 0-596-00318-8)的封面也被设计成了一个公猫的形象 。而的Logo兼吉祥物也被设计成了一只公猫 。
诀窍是,当配置正确时, 为HTML页面服务,而 实际上运行JSP 页面和 。另外,和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个和JSP容器,独立的容器是的默认模式 。不过,处理静态HTML的能力不如服务器 。目前最新版本为8.0;
2,JDK介绍
JDK(JavaKit) 是 Java 语言的软件开发工具包(SDK) 。
3,jdk不同发展方向:
SE(J2SE), ,标准版,是我们通常用的一个版本,从JDK 5.0开始,改名为Java SE 。
EE(J2EE), ,企业版,使用这种JDK开发J2EE应用程序,从JDK 5.0开始,改名为Java EE 。
ME(J2ME),micro ,主要用于移动设备、嵌入式设备上的java应用程序,从JDK 5.0开始,改名为Java ME 。
4,JDK包含的基本组件包括:
javac – 编译器,将源程序转成字节码
jar – 打包工具,将相关的类文件打包成一个文件
– 文档生成器,从源码注释中提取文档
jdb – ,查错工具
java – 运行编译后的java程序(.class后缀的)
:小程序浏览器,一种执行HTML文件上的Java小程序的Java浏览器 。
Javah:产生可以调用Java过程的C过程,或建立能被Java程序调用的C过程的头文件 。
Javap:Java反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代码含义 。
: Java进行系统调试和监控的工具
5,java 体系结构:
A java 编程语言:
C java class(类)文件格式:标准
B java API (开发接口):
D java VM:各自独立,又有联系;
6,Java虚拟机
JVM是Java(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的 。
Java语言的一个非常重要的特点就是与平台的无关性 。而使用Java虚拟机是实现这一特点的关键 。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码 。而引入Java语虚拟机后,Java语言在不同平台上运行时不需要重新编译 。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行 。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行 。这就是Java的能够“一次编译,到处运行”的原因 。
JVM 工作结构如图1.1所示:

Tomcat 基础知识

文章插图
A, 方法区:被虚拟机加载的类信息;常量、静态变量等;永久代;
B,堆:内存动向的, java堆是jvm管理的最大一部分,也是GC管理的主要区域;也是存储java 划分出来的对象;主流的算法都基于分代收集方式进行,新生代和老年代,线程共享;
C, java栈:java 线程私有的,创建栈贞,存放线程的局部变量表;
D, PC寄存器():有些空间是共享的,有些是每一个线程独占的部分;程序计数器,线程各自都独占的内存空间;
E, 本地方法栈:依赖于本地平台;