您的位置:首页 > 其它

Web开发基础--一些基本概念

2010-10-29 11:14 681 查看
应用客户端容器、Applet容器、web容器:

应用客户端容器是指在客户端的Java运行时环境,一般就是客户端的Java虚拟机;在该容器内运行Jar文件。

Applet容器是指在浏览器内的Applet的Java运行时环境;在该容器内运行Applet;

web容器:在Web服务器端运行的Java运行时环境,一般是将客户端的请求转发到特定的Servlet;

在Ecliplse中安装了J2EE的插件后,在创建新的web项目时,有static web project和dynamic web project;

在Eclipse的帮助文档中,对这两个概念是这样定义的:

static web project: 包含HTML文件;一般用于content-based web application;即,全部是静态的web页面,内容为主;

dynamic web project:包含HTML文件、servlet、Jsp,还可以对数据进行访问;

Static Web Project与Dynamic web project的对比:

按照向导,创建一个static Web Project后,只有一个子目录,叫WebContent,顾名思义,就是存放静态web页面的地方;

而创建一个dynamic web project后,有三个目录,分别是WebContent、src和build;由此可见,对于dynamic web project,有一个编译的过程。

再看两者的nature:

Static Web Project有三个nature:

org.eclipse.wst.common.project.facet.core.nature

org.eclipse.wst.common.modulecore.ModuleCoreNature

org.eclipse.wst.jsdt.core.jsNature

而Dynamic Web Project有五个nature,除了Static Web Project拥有的三个nature外,它还有两个nature:

org.eclipse.jdt.core.javanature

org.eclipse.jem.workbench.JavaEMFNature

org.eclipse.wst这个包中的wst,我想应该是webservice tools的缩写;

而Dynamic Web Project多出的nature中,

org.eclipse.jdt.core.javanature是非常重要的;这表明了Dynamic Web Project这是一个java project;

而Static Web Project只是一个HTML页面的集合,不需要JDT插件去处理。

在Export时,也体现了这一点;

用Static Web Project打包,popupmenu的Export菜单是没有任何提示的;而且在Export成WAR时,认为这不是一个web project module;而Dynamic Web Project Export时,就有提示WAR,这就是通过Nature来识别的。

WAR和EAR:

WAR的全称是Web Application Archive;而EAR的全称是Enterprise Application Archive;

在Eclipse的帮助文档中,有描述WAR的格式;有两个重要的描述文件:

META-INF和WEB-INF

META-INF是MIME TYPE的;包含了一些配置信息;

WEB-INF是XML格式的;包含了一些部署信息;

WAR和EAR的关系:

一个WAR就是一个Web应用程序;在Dynamic Web project的Export中,有提示,是否将该Project添加到一个EAR中,由此可见,一个EAR是可以包含多个WAR的。

WAR和Web容器的关系;

Web容器将客户端的请求转发到WAR中;

将tomcat启动后,发现,当拷贝一个WAR到webapp目录下时,tomcat会自动将WAR解压为一个目录;

而tomcat停止时,拷贝,就不会有这个现象;而tomcat启动时,会自动检测webapp目录,如果发现war,就会解压。

tomcat与WAR的连接,不需要配置;拷贝后,可直接使用,访问;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: