tomcat 基础知识学习

1: 直接将web项目文件件拷贝到webapps 目录中,Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用,所以可以将JSP程序打包成一个 war包放在目录下,服务器会自动解开这个war包,并在这个目录下生成一个同名的文件夹。一个war包就是有特性格式的jar包,它是将一个web程序的所有内容进行压缩得到.

webapps这个默认的应用目录也是可以改变。打开Tomcat的conf目录下的server.xml文件,找到下面内容:

<Host name="localhost" appBase="webapps"

       unpackWARs="true" autoDeploy="true"

       xmlValidation="false" xmlNamespaceAware="false">

将appBase修改即可。.

2:  在serverl.xml中指定

<Context path="/sms4" docBase="D:workspacesms4WebRoot"/>

说明:

path是虚拟路径;

docBase 是应用程序的物理路径;

reloadable 如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib 和/WEB-INF/classes目录的变化,自动装载新的应用程序,可以在不重起tomcat的情况下改变应用程序,实现热部署.

3: 

3: 创建一个Context文件

很灵活,在conf目录中,新建 Catalina\localhost目录,在该目录中新建一个xml文件,名字不可以随意取,要和path后的那个名字一致,按照下边这个path的配置,xml的名字应该就应该是hello,该xml文件的内容为:<Context path="/hello" docBase="E:/workspace/hello/WebRoot" debug="0" privileged="true"></Context>  

 

4:   server.xml 常用配置

server.xml 在 tomcat 目录的 conf 下面一个;但是eclipse的/Users/i320007/Desktop/source_code/First/study/Servers/ServerForTest-config下面也有。

tomcat 是你整个服务器中的配置,eclipse中的server下的 conf 只是你当前工程的配置,具体实现是由tomcat内部实现的

eclipse用的server 真实位置在 .metadata org.eclipse.wst.server.core里面, server项目中的配置文件就是启动用的。

这样的机制就保证了你eclipse里的项目不会影响原先tomcat里的配置,每次都用不同的参数来启动tomcat。这样会有一个问题,就是如果你原先的tomcat配置文件有错的话,eclipse会先拷贝你原有的tomcat下的配置,然后在这个配置的基础上修改。所以,遇到这种问题,先保证原有的配置没问题,然后再去修改eclipse新生成的

 

catalina 就是Tomcat服务器使用的 Apache实现的servlet容器的 名字。

Tomcat服务器通过Connector连接器组件与客户程序建立连接。

Connector组件负责接收客户的请求,以及把Tomcat服务器的响应结果发送给客户。默认情况下,Tomcat在server.xml中配置了两种连接器:

第一个连接器监听8080端口,负责建立HTTP连接。在通过浏览器访问Tomcat服务器的Web应用时,使用的就是这个连接器。  

第二个连接器监听8009端口,负责和其他的HTTP服务器建立连接。在把Tomcat与其他HTTP服务器集成时,就需要用到这个连接器。

 

在Tomcat中Container容器的设计是典型的责任链设计模式,其有四个子容器:Engine、Host、Context和Wrapper。这四个容器之间是父子关系,Engine容器包含Host,Host包含Context,Context包含Wrapper。

我们在web项目中的一个Servlet类对应一个Wrapper,多个Servlet就对应多个Wrapper,当有多个Wrapper的时候就需要一个容器来管理这些Wrapper了,这就是Context容器了,Context容器对应一个工程,所以我们新部署一个工程到Tomcat中就会新创建一个Context容器。

 

Host容器

Host容器是Engine容器的子容器,上面也说到Host是受Engine容器管理的,就是指一个虚拟主机,比如我们在访问具体jsp页面URL中localhost就是一个虚拟主机,其作用是运行多个应用,并对这些应用进行管理,其子容器是Context。

 

使用eclipse配置Tomcat服务器的时候发现,默认情况下Tocmat把我们部署的项目放在了workspaces下面,而不是像Myeclipse默认的那样放在tomcat的安装路径下。修改方法: 要把已经绑定的工程删除掉,然后clean..., 让后就可以改了;然后重新绑定。

6: TOMCAT中web.xml文件和java项目中WEB-INF目录下的web.xml文件的区别

加载顺序是        1、tomcat conf目录下;        2、项目目录下的;  

                         Tomcat config目录下的为服务器全局作用域,一般用来配置全局设置、数据源等,而项目目录下的为局部作用域。

7:  Tomcat目录:

         

  bin:  启动和关闭的脚本

    conf:  配置文件(server.xml    web.xml)

    doc:  Tomcat文档

    lib/jalpser/common:   tomcat运行需要的库文件。

    logs: tomcat运行时的log文件。

    src:  tomcat源代码

    webapps:  tomcat 的主要web发布目录。

    work: jsp编译后产生的class文件。

原文地址:https://www.cnblogs.com/liufei1983/p/7523841.html