Tomcat学习总结

来源:互联网 发布:linux内核分析及编程 编辑:程序博客网 时间:2024/06/05 21:15

# Tomcat学习总结

Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache、Sun和其它一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和Jsp规范总能在 Tomcat中得到体现。

尽管Tomcat也可以作为独立的Java Web服务器,但在对静态资源(HTML、图像文件等)的处理速度,Web服务器管理等方面都不如Apache、IIS服务器等其他专业的HTTP服务器,因此在实际应用中,常常把Tomcat与其他的HTTP服务器集成使用。对于不支持Servlet/JSP的HTTP服务器,可以通过Tomcat服务器来运行Servlet/JSP组件。

当Tomcat与其他HTTP服务器集成时,Tomcat服务器的工作模式通常为进程外的Servlet容器,Tomcat服务器与其他HTTP服务器之间通过专门的插件来通信


Tomcat的目录结构

  • bin:存放的可执行文件 启动和关闭Tomcat脚本文件。
  • conf: 配置文件
  • lib: 存放的是tomcat和项目运行时的jar包
  • logs: Tomcat的日志文件
  • temp:临时文件
  • webapps: 存放项目的目录
  • work: 存放jsp文件在运行时产生的java和class文件

Tomcat常用配置文件

server.xml:Tomcat中最重要的配置文件,定义了tomcat的体系结构,包括连接器端口、连接数、集群、虚拟目录、访问日志等的设置。

context.xml:全局context的配置文件,包括JNDI等信息的配置。

tocmat-users.xml:Tocmat管理员身份的配置文件,关键是设置管理员账号的密码。

logging.properties:Tocmat日志配置文件,可以修改默认的Tocmat日志路径和名称。

WEB项目目录总结

一个Web应用程序基本上由以下项目组成:

  • 1.静态资源(HTML,CSS,图片,声音等)
  • 2.Servlet
  • 3.JSP
  • 4.自定义类
  • 5.工具类
  • 6.部署描述文件(web.xml等)、设置信息(Annotation等)

在Eclipse中只要创建一个Dynamic Web Project,就可以根据创建向导创建出一个典型Java Web站点的目录结构。除非有特殊需要,在大多数情况下都没有必要修改这个目录结构,这也是Web容器的缺省目录结构,我们只要直接使用即可。一般的目录结构如下:
WebContent (站点根目录)
|- - -META-INF (META-INF文件夹)
|- - -|- - -MANIFEST.MF (MANIFEST.MF配置清单文件)
|- - -WEB-INF (WEB-INF文件夹)
|- - -|- - -web.xml (站点配置web.xml)
|- - -|- - -lib (第三方库文件夹)
|- - -|- - -|- - -*.jar (程序需要的jar包)
|- - -|- - -classes (class文件目录)
|- - -|- - -|- - -…*.class (class文件)
|- - -userdir (自定义的目录)
|- - -|- - -.jsp,.js,*.css,*images (自定义的资源文件)
|- - -userfiles (自定义的资源文件)

1.WebRoot(WebContent)下是发布到服务器上的内容。
2.META-INF是工程自身相关的一些信息,元文件信息,通常由开发工具,环境自动生成。
3.文件web.xml:完成servlet在web容器的注册。web.xml是Web应用程序的部署描述文件,是用来给Web服务器解析并获取Web应用程序相关描述的。不按照sun公司的规范做应用web程序的结构,web容器找不到,比如,xml文件写错了,启动tomcat的时候会报错
4.凡是客户端能访问的资源(.html,.jpg)必须跟WEB-INF在同一目录。即放在Web根目录下的资源,从客户端是可以通过URL地址直接访问。
5.切忌:凡是WEB-INF里面的文件都不能被客户端直接访问(比如隐藏的信息)。WEB-INF目录下的资源对用户来说是不可见的,而对Web服务器来说则没有这样的限制。例如:在WEB-INF下的index.htm,客户端无法与对待其他文件夹内的信息一样,通过http://yourserver/yourwebapp/WEB-INF/index.htm访问。WEB-INF文件夹是禁止通过URL访问的。
6. 在WEB-INF目录的classes及lib子目录下,都可以存放Java类文件。在运行时,Servlet容器的类加载器先加载classes目录下的类,再加载lib目录下的JAR文件(Java类库的打包文件)中的类,jar包是许多class文件的集合。因此,如果两个目录下存在同名的类,classes目录下的类具有优先权。

这里写图片描述

0 0
原创粉丝点击