美文网首页
JavaEE-Tomcat配置

JavaEE-Tomcat配置

作者: lioilwin | 来源:发表于2017-08-23 22:11 被阅读34次

    1.Tomcat目录结构

    bin      tomcat二进制程序,启动/关闭批处理
    conf     配置文件
    lib      运行依赖库(jar包)
    logs     日志文件
    temp     临时目录
    webapps  网站web应用默认存放目录
    work     工作目录(jsp的缓存class,java)
    

    2.Host主机(网站)

    一个Tomcat可以运行多个Host主机(即网站)
    
    在 conf/sever.xml 配置
    <Engine defaultHost="默认的主机名" name="Catalina">
        <Host appBase="Host存放路径" name="Host主机名(一般是域名)" />
        <Host appBase="Host存放路径" name="Host主机名" />
        <Host appBase="Host存放路径" name="Host主机名" />
    </Engine>
        
    defaultHost 设置当前IP的默认Host
                如果浏览器直接通过IP访问,就会转到这个默认Host(一个IP可以绑定多个Host域名)
                如果浏览器通过域名访问,就会转到同名的Host主机
    

    3.WEB应用(webapp)

    一个Host可以有多个web应用模块, WEB应用之间相互独立(代码没有依赖)
    
    WEB应用的目录结构
        |-html,css,js,jsp   浏览器直接访问
        |-WEB-INF           浏览器无法直接访问
             |-classes      java字节码         
             |-lib          jar包            
             |-web.xml      配置WEB首页/配置servlet的访问路径(URL)/配置监听器和过滤器
    
    配置WEB应用
    1.直接在Host文件夹下存放WEB文件夹,就完成WEB应用配置,无需修改conf/server.xml
        <Host appBase="Host存放路径" name="Host主机名" autoDeploy="true" unpackWARs="true"/>
        
        若WEB文件夹名为ROOT,则该WEB应用为默认WEB应用(不用加WEB子路径,直接通过Host主机(IP/域名)访问)
                    
    2.在 conf/server.xml
        <Host appBase="Host存放路径" name="Host主机名" autoDeploy="true" unpackWARs="true">
            <Context docBase="WEB应用存放路径" path="WEB应用URL路径">
            <Context docBase="WEB应用存放路径" path="">
        </Host>
        
        一个Context代表一个WEB应用
        
        若path="", 则该WEB应用为默认WEB应用
        
    3.在 conf/Catalina/Host主机名/X.xml
        在X.xml中添加 <Context docBase="WEB应用存放路径"> 
        X.xml文件名是WEB应用URL路径,对于多级URL路径,用#代替/(因为文件名不能含有/)
        
        若xml文件名=ROOT.xml, 则该WEB应用为默认WEB应用   
    

    4.Tomcat自动部署和自动加载(autoDeploy和reloadable的区别)

    <Host appBase="webapps" name="lioil.win" autoDeploy="true" unpackWARs="true">
        <Context docBase="xxx" path="xxx" reloadable="true"/>
    </Host>
    
    reloadable(自动加载java字节码class): 
        当WEB应用/WEB-INF/lib目录中的jar 或 classes目录中的class文件被增删改, Tomca自动重新加载java类(代价大),该选项适合调试开发
    
    autoDeploy(自动部署WEB应用): 
        当webapps目录中的WEB应用被修改(WEB应用目录被增删改 或 /WEB-INF/web.xml被修改), Tomcat会自动重新部署WEB应用,该选项方便应用部署
        如果autoDeploy = "false", 则每次部署WEB应用,都要重启Tomcat
        
    总结: reloadable 和 autoDeploy 区别很明显, 一个是监听java类的修改以及自动加载类, 另一个是监听WEB应用的修改以及自动部署
    

    简书: http://www.jianshu.com/p/7504b856c46a
    CSDN博客: http://blog.csdn.net/qq_32115439/article/details/54584621
    GitHub博客:http://lioil.win/2017/01/17/Tomcat.html
    Coding博客:http://c.lioil.win/2017/01/17/Tomcat.html

    相关文章

      网友评论

          本文标题:JavaEE-Tomcat配置

          本文链接:https://www.haomeiwen.com/subject/rbswrxtx.html