zoukankan      html  css  js  c++  java
  • Tomcat 映射虚拟目录和程序热部署

    虚拟目录的设置

    方法一:
    在${tomcat安装目录}/conf/Catalina/localhost目录创建一个xml文件,任意文件名都可以,但是此文件名是web应用发布后的虚拟目录;

    比如创建一个img.xml,在文件中添加

    test.xml内容:
    <Context  path="/img" docBase="H:image" crossContext="true" debug="3" privileged="true"  reloadable="true" deubt="true">
    </Context>


    浏览器中的地址:img与文件img.xml的文件名一致


    方法二:
    直接修改server.xml文件,请在修改之前先做好备份。

        <server>

            <Engine>

                <Host>

                        ......

                        <Context  path="/img" docBase="H:image" crossContext="true"

                                 debug="3"  privileged="true" reloadable="true"  debug="true">
                        </Context>

                </Host>

            </Engine>
        </server>

     

    属性说明:

    • crossContext  如果想在应用内调用ServletContext.getContext()来返回在该虚拟主机上运行的其他web application的request dispatcher,设为true。在安全性很重要的环境中,设为false,使得getContext()总是返回null。缺省值为false。
    • docBase         该web应用的文档基准目录(Document Base,也称为Context Root),或者是WAR文件的路径。可以使用绝对路径,也可以使用相对于context所属的Host的appBase路径。
    • override         如果想利用该Context元素中的设置覆盖DefaultContext中相应的设置,设为true。缺省情况下为false,使用DefaultContext中的设置。
    • privileged       设为true,允许context使用container servlets,比如manager servlet。
    • path              web应用的context路径。catalina将每个URL的起始和context path进行比较,选择合适的web应用处理该请求。特定Host下的context path必须是惟一的。如果context path为空字符串(""),这个context是所属Host的缺省web应用
    • reloadable      如果希望Catalina监视/WEB-INF/classes/和/WEB-INF/lib下面的类是否发生变化,在发生变化的时候自动重载web application,设为true。这个特征在开发阶段很有用,但也大大增加了服务器的开销。因此,在发布以后,不推荐使用。
    • debug           是否为调试模式,如果在开发时显示调试信息,设为true。

     

    热部署的设置
    tomcat上的部署问题,有时候是个麻烦的事,当修改java的代码后都要重启tomcat。现在,我们采用热部署,节省开发时间。

    实现步骤:

    1. 根据上面虚拟目录的设置方法,建立虚拟目录,在这里采用方一,因为不用修改server.xml文件

    在${tomcat安装目录}/conf/Catalina/localhost目录创建一个xml文件,任意文件名都可以,但是此文件名是web应用发布后的虚拟目录;


    test.xml内容:
    <Context  path="/test" docBase="E:workspace estWebRoot" crossContext="true" debug="3" privileged="true"  reloadable="true">
    </Context>


    2. 修改eclipse 的.classpath文件的output路径

    <?xml version="1.0" encoding="UTF-8"?>
    <classpath>
            ......
        <classpathentry kind="output" path="WebRoot/WEB-INF/classes"/>
    </classpath>

    关注公众号,分享干货,讨论技术


  • 相关阅读:
    ios-表视图-demo4-内容自己适应高度
    ios-表视图-demo3-单选
    应用管理的实现
    初识MVC和KVC
    Xcode的常用快捷键
    UI基础--手写代码实现汤姆猫动画
    UI基础--UIView常见属性之frame、center、bounds、transframe属性
    UI基础--UIButton、懒加载
    ios多线程
    ios多线程简介
  • 原文地址:https://www.cnblogs.com/molashaonian/p/9097603.html
Copyright © 2011-2022 走看看