您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > asima文档_Tomcat与Java Web开发技术
《Tomcat与JavaWeb开发技术》Auth:Asima学习总结Email:asima127@gmail.comBlog:第一章Tomcate介绍1.1Tomcat与Servlet容器JakartaTomcat服务器是一种Servlet/JSP容器Servlet是一种运行在支持Java语言的服务器上的组件,它运行在服务器端,完全运行在Java虚拟机上,因此它的运行不依赖浏览器Tomcat作为Servlet容器,负责处理客户请求,把请求传送给Servlet并把结果返回给客户Servlet容器与Servlet接口之间是由JavaServletAPI定义的,在JavaServletAPI中定义了Servlet的各种方法,这些方法在Servlet生命周期的不同阶段被Servlet容器调用,ServletAPI定义了Servlet容器传递给Servlet的对象类,如请求对象ServletRequest和响应对象ServletResponse1.2Tomcat的结构Tomcat服务器是由一系列可配置的组件构成,其中核心组件是CatalinaServlet容器,它是所有其他Tomcat组件的顶层容器,见CATALINA_HOME/conf/server.xml,其中每个元素都是一种Tomcat组件,分成4类:1顶层类元素包括Servlet元素和Service元素,它们位于整个配置文件的顶层2连接类元素此类元素代表了介于客户与服务之间的通信接口,负责将客户的请求发送给服务器,并将服务器的响应结果传递给客户3容器类元素此类元素代表处理客户请求并生成响应结果的组件,有3种,分别是:Engine、Host和Context;Engine组件为特定的Service组件处理所有客户请求,Host组件为特定的虚拟主机处理所有客户请求,Context组件为特定的Web应用处理所有客户请求4嵌套类元素此类元素代表了可以加入到容器中的组件,如Logger、Valve和Realm客户Servlet容器Servlet请求数据响应数据ServletRequest对象ServletResponse对象Servlet容器响应客户请求的过程《Tomcat与JavaWeb开发技术》Auth:Asima学习总结Email:asima127@gmail.comBlog:一些基本的Tomcat元素介绍:Server元素代表整个CatalinaServlet容器,它是Tomcat实例的顶层元素,可以包含一个或多个Service元素Service元素包含一个Engine元素,以及一个或多个Connector元素,这些Connector元素共享同一个Engine元素Connector元素代表和客户程序实际交互的组件,它负责接收客户请求,以及向客户返回响应结果Engine元素每个Service元素只能包含一个Engine元素,它处理在同一个Service中所有的Connector元素接收到的客户请求Host元素一个Engine元素中可以包含多个Host元素,每个Host元素定义了一个虚拟主机,它可以包含一个或多个Web应用Context元素此元素是使用最频繁的元素,每个Context代表了运行在虚拟主机上的单个Web应用,一个Host元素可以包含多个Context元素如图,Connector负责接收客户的请求并向客户返回响应结果,在同一个Service中,多个Connector共享同一个Engine,同一个Engine中可以有多个Host,同一个Host中包含多个Context1.3JavaWeb应用简介Tomcat服务器最主要的功能就是充当JavaWeb应用的容器,Sun这样定义:JavaWeb应用由一组Servlet、HTML页、类,以及其他可以被绑定的资源构成。它可以在各种实现Servlet规范的Web应用容器中运行。《Tomcat与JavaWeb开发技术》Auth:Asima学习总结Email:asima127@gmail.comBlog:应用包含如下内容:ServletJSP实用类静态文档,如HTML、图片等客户端类描述Web应用的信息(web.xml)JavaWeb应用的主要特征之一就是它与Context的关系,每一个Web应用有唯一的Context,当JavaWeb应用运行时,Servlet容器为每个Web应用创建唯一的ServletContext对象,它被同一个Web应用中的所有组件共享假如有两个Web应用分别是helloapp和bookstore,那么它们的URL分别是://localhost:8080/bookstore/bookstore.jsp1.4Tomcat的工作模式Tomcat作为Servlet容器,有以下几种工作模式:1独立的Servlet容器在这种模式下,Tomcat可以作为独立的JavaWeb应用服务器,Servlet容器作为构成Web服务器的一部分而存在,这个是Tomcat的默认模式2进程内的Servlet容器Servlet容器分为Web服务器插件和Java容器两部分;Web服务器插件在其他Web服务器内部地址空间打开一个Java虚拟机(JVM),Java容器就在此JVM中运行Servlet。如有客户端发出调用Servlet的请求,插件获得对此请求的控制并将它传递(使客户1客户2Connector端口:8080EngineLocalHostContext:helloappindex.htmContext:bookstorbook.jspServiceTomcat服务器的各个组件响应客户请求的过程Serverlet《Tomcat与JavaWeb开发技术》Auth:Asima学习总结Email:asima127@gmail.comBlog:用JNI通信机制)给Java容器。(JNI-JavaNativeInterface,指的是Java本地调用接口,通过这一接口,Java程序可以和采用其他语言编写的本地程序进行通信。)3进程外的Servlet容器Servlet容器分为Web服务器插件和Java容器两部分;Web服务器插件在其他Web服务器外部地址空间打开一个JVM,Java容器就在此JVM中运行Servlet。如有客户端发出调用Servlet的请求,插件获得对此请求的控制并将它传递(采用IPC通信机制)给Java容器。(IPC是两个进程之间进行通信的一个机制)Tomcat既可以作为独立的Servlet容器,也可以和其他的Web服务器集成(Apche、IIS、Netscape),作为进程内或进程外的Servlet容器1.5Tomcat的版本1.6安装和配置Tomcat所需的资源Tomcat5.0.x需要JDK1.4及以上版本两种Tomcat的安装文件,exe和zip;exe可把Tomcat服务装入到Window服务中1.7安装Tomcat1在window系列系统中安装Tomcat首先安装JDK,然后解压jakarta-tomcat-5.x.zip,比如解压到c:\tomcat5.0然后在“系统变量”中需要设定两个环境变量JAVA_HOME=c:\j2sdk1.4.2CATALINA_HOME=c:\tomcat5.02在Linux系统中安装类似,在.bash_profile设置以上两个环境变量1.8测试Tomcat的安装若不想用默认的8080端口,那么修改CATALINA_HOME/conf/server.xmlConnectorclassName=”org.apache.coyote.tomcat5.CoyoteConnector”port=”8080”minProccess=”5”…..JMX(JavaManagementExtensions):是SUN提出的Java管理扩展规范,是一个为应用程序、设备和系统植入管理功能的框架。JMX可以跨越一系列异构操作系统平台、系统体系结构和网络传输协议。《Tomcat与JavaWeb开发技术》Auth:Asima学习总结Email:asima127@gmail.comBlog:的运行脚本如果配置的server.xml文件有错,最常见的是语法错误,这将会导致Tomcat启动失败,原因是导致org.xml.sax.SAXParseException异常第二章创建和发布Web应用2.1Tomcat的目录结构目录描述/bin存放启动和关闭Tomcat的脚本文件/conf存放Tomcat服务器的各种配置文件,最重要的就是server.xml/server包含3个子目录:classes、lib和webapps/server/lib存放Tomcat服务器所需的各种JAR文件/server/webapps存放Tomcat自带的两个web应用:admin应用和manager应用/common/lib存放Tomcat服务器以及所有Web应用都可以访问的JAR文件/share/lib存放所有的Web应用都可以访问的JAR文件/logs存放Tomcat的日志文件/webapps当发布Web应用时,默认情况下把Web应用文件放于此目录/workTomcat把由JSP生成的Servlet放于此目录对于JavaWeb应用中的WEB-INF目录下,也可以建立lib子目录,在lib目录下可以放各种JAR文件,这些JAR文件只能被当前Web应用访问2.2创建和发布Web应用JavaWeb应用由一组静态HTML页、Servlet、JSP和其他相关的class组成,每种组件在Web应用中都有固定的存放目录。Web应用的配置信息存放在web.xml文件中。在发布某些组件(如Servlet)时,必须在web.xml文件中添加相应的配置信息2.2.1Web应用的目录结构目录描述/helloappWeb应用的根目录,所有的JSP和HTML文件都存放于此目录下/helloapp/WEB-INF存放Web应用的发布描述文件web.xml上面提到的lib目录下都只接受JAR文件,如果文件是ZIP的,那么应该先解压,然后再用jar命令打包成JAR文件,再拷入lib中,如果是zip文件,Tomcat服务器仍然找不到相关的包《Tomcat与JavaWeb开发技术》Auth:Asima学习总结Email:asima127@gmail.comBlog:存放各种class文件,Servlet类文件也放于此目录/helloapp/WEB-INF/lib存放Web应用所需的各种JAR文件,比如存放JDBC驱动程序的JAR文件可以看到在classes和lib中都可以存放Java类文件,在运行过程中,Tomcat的类装载器先装载classes目录下的类,再装载lib目录下的类在helloapp应用中创建了如下组件:HTML组件:index.htmJSP组件:login.jsp和hello.jspServlet组件:DispatcherServlet这些组件的关联是:index.htm-login.jsp-DispatcherServlet-hello.jsp2.2.2Web.xml文件JavaWeb应用通过一个基于xml的发布描述符文件来配置其发布信息,它就是
本文标题:asima文档_Tomcat与Java Web开发技术
链接地址:https://www.777doc.com/doc-6437863 .html