• Descriptor


    部署描述符

    部署描述符是JavaEE程序常见的一部分,但是之前都没有较为全面的学习过,这里就较为全面的记录一下部署描述符中的元素。部署一个Servlet 3 或以上应用程序是一件轻而易举的事。通过Servlet注解,对于不太复杂的应用程序,甚至可以部署没有描述符的Servlet/JSP应用程序。但是需要更加精细配置或是我们不能修改框架源码的情况,仍然需要部署描述符。首先,部署描述符必须命名为web.xml并位于WEB-INF目录下。Java类编译后class文件和配置文件都会放置在WEB-INF/classes目录下,而Java类库都放在WEB-INF/lib目录下,所有的应用程序资源打包成war为后缀的jar文件,这个war中包含WEB-INF(web.xml, classes,lib),页面资源。

    在存在如下场景,部署描述符不能少:

    需要传递全局初始化参数给ServletContext
    有多个过滤器,并要设置调用顺序
    需要修改会话超时设置
    需要限制资源的访问,并配置用户身份验证方式
    先来看看web.xml的头部声明:

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://java.sun.com/xml/ns/javaee"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_1.xsd" version="3.1">
    [metadata-complete="true|false"]
    ...
    </web-app>

    xsi:schemaLocation 属性指定了元素文档的位置,以便可以进行验证。version属性指定了Servlet规范的版本。

    可选的metadata-complete属性指定部署描述符是否是完整的,若值为True,则Servlet/JSP容器将忽略Servlet注解。若值为False或不存在该值,则容器必须检查类文件的Servlet注解

  • 相关阅读:
    2020了,初/中级前端面试你应该知道的(上)
    Vue页面权限控制和动态添加路由
    Javascript获取数组中最大和最小值
    localStorage和cookie的跨域解决方案
    移动端常见问题汇总
    码云git本地仓库链接远程仓库
    IntelliJ IDEA Activation code亲测可用
    Sping4之注入参数
    Sping4之依赖注入
    Spring核心之IOC
  • 原文地址:https://www.cnblogs.com/448aml/p/10548627.html
Copyright © 2020-2023  润新知