zoukankan      html  css  js  c++  java
  • 【Tomcat】Tomcat容器 web.xml详解

       Tomcat的安装目录下的conf目录下的web.xml文件有许多配置,例如:

    <init-param>
    
         <param-name>debug</param-name>
    
         <param-value>0</param-value>
    
     </init-param>

        debug是设定debug level, 0表示提供最少的信息,9表示提供最多的信息.

    下面这个参数重要:

    <init-param>
    
        <param-name>listings</param-name>
    
        <param-value>false</param-value>
    
    </init-param>

      在 web 开发阶段,通常希望列出 web 路径下的所有页面,这样能方便选择需要调试的 jsp 页面,listings设置为true时表示列出页面,为false则表示不支持目录结构的显示

      <load-on-startup>1</load-on-startup>

    1)load-on-startup元素标记容器是否在启动的时候就加载这个servlet(实例化并调 用其init()方法)。
    2)它的值必须是一个整数,表示servlet应该被载入的顺序
    2)当值为0或者大于0时,表示容器在应用启动时就加载并初始化这个servlet;
    3)当值小于0或者没有指定时,则表示容器在该servlet被选择时才会去加载。
    4)正数的值越小,该servlet的优先级越高,应用启动时就越先加载。
    5)当值相同时,容器就会自己选择顺序来加载。

    <servlet>
    
            <servlet-name>jsp</servlet-name>
    
            <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
    
            <init-param>
    
                <param-name>fork</param-name>
    
                <param-value>false</param-value>
    
            </init-param>
    
            <init-param>
    
                <param-name>xpoweredBy</param-name>
    
                <param-value>false</param-value>
    
            </init-param>
    
            <load-on-startup>3</load-on-startup>
    
        </servlet>

    参数

    描述

    development

    默认值为true,说明jsp文件还处于开发阶段,因此Jasper应该按modificationTestInterval参数对jsp文件进行检查,当jsp发生更改时,则对其进行重编译

    fork

    默认值为true。指示使用不同的JVM编译JSP,这样可以消除资源竞争和在开发阶段的类加载器冲突

    checkInterval

    单位为秒,规定Jasper按这个时间间隔检查jsp是否需要重编译,默认为0,指示使用后台程序处理

    modificationTestInterval

    主要在development为true时发挥作用,默认值为4。Jasper将按这个频率检查jsp文件是否可以验证是否修改过。

    compiler

    读取资源时使用的缓存大小,默认为2KB

    classdebuginfo

    写资源时使用的缓存大小,默认为2KB

    keepgenerated

    默认值为true。指示Jasper在两次调用servlet之间在工作目录中保留那个servlet,这样可以大大提高tomcat的效率

    mappedfilegenStrAsCharArray
    dumpSmaptrimSpaces
    supressSmap

    这些是jsp开发者使用的优化和调试选项。

    scratchDir

    Jasper在编译jsp时使用的临时文件夹,默认为$CATALINA_HOME/work下的一个临时文件夹

    xpoweredBy

    默认为false。功能为生成X-Power-By头(header)

    compilerTargetVM

    编译生成的servlet的目标VM

    compilerSourceVM

    生成servlet的源VM

    <mime-mapping>
    
            <extension>zip</extension>
    
            <mime-type>application/zip</mime-type>
    
        </mime-mapping>

    mime-mapping是web.xml中的一个节点,用来指定对应的格式的浏览器处理方式,另外也可以用来配置静态页面的打开编码:

    <mime-mapping>
    
         <extension>htm</extension> 
    
          <mime-type>text/html;charset=gb2312</mime-type> 
    
     </mime-mapping>
    
     <mime-mapping>
    
          <extension>html</extension> 
    
          <mime-type>text/html;charset=gb2312</mime-type> 
    
     </mime-mapping>

    如果Web应用程序包含一些不常用的文件,则需要确保分配某些MIME类型,mime-mapping元素正是为此而设计的。添加rar,iso等的mime-type映射,避免在浏览器里直接打开

      <mime-mapping>  
    
            <extension>rar</extension>  
    
            <mime-type>application/octet-stream</mime-type>  
    
        </mime-mapping>  
    
        <mime-mapping>  
    
            <extension>iso</extension>  
    
            <mime-type>application/octet-stream</mime-type>  
    
    </mime-mapping>

    常见的MIME类型:
    超文本标记语言文本 .htm,.html text/html
    普通文本 .txt text/plain
    RTF文本 .rtf application/rtf
    GIF图形 .gif image/gif
    JPEG图形 .ipeg,.jpg image/jpeg
    au声音文件 .au audio/basic
    MIDI音乐文件 mid,.midi audio/midi,audio/x-midi
    RealAudio音乐文件 .ra, .ram audio/x-pn-realaudio
    MPEG文件 .mpg,.mpeg video/mpeg
    AVI文件 .avi video/x-msvideo
    GZIP文件 .gz application/x-gzip
    TAR文件 .tar application/x-tar

    关于tomcat的server.xml配置参考:  https://www.cnblogs.com/qlqwjy/p/8722529.html

  • 相关阅读:
    微信nickname乱码(emoji)及mysql编码格式设置(utf8mb4)解决的过程
    eclipse Specified VM install not found: type Standard VM, name
    eclipse中安装Open Explorer
    关于Java变量的可见性问题
    Win8&Win2012R2如何支持DOTA2输入法
    Adobe Flash player 10 提示:Error#2044:未处理的IOErrorEvent. text=Error#2036:加载未完成 的解决方法
    IntelliJ IDEA 12.1.4 解决中文乱码
    Win8.1RTM英文版安装中文语言包的两种方法
    在FlashDevelop里使用1.8版本的的TortoiseSVN
    [修复Win8.1 BUG] 解决Win8.1英文字体发虚不渲染问题
  • 原文地址:https://www.cnblogs.com/qlqwjy/p/9070000.html
Copyright © 2011-2022 走看看