之前我们在编写HelloWorld项目时,在WEB-INF目录下创建了一个web.xml文件。这个文件叫做部署描述文件,每个Servlet应用程序的部署描述文件的名称都是web.xml。Web容器在启动时读取该文件,对应用程序进行配置。下面给出了部署描述文件中常用的元素

<servlet></servlet> 用来声明一Servlet的信息,主要有以下子元素

  • <servlet-name> 用来定义Servlet的名称,该名称在整个应用中必须是惟一的
  • <servlet-class> 用来指定Servlet的完全限定类名。
  • <init-param> 用来定义参数,可有多个init-param。Servlet类中通过getInitParamenter(String name)方法访问初始化参数。
  • <load-on-startup> 指定当Web应用启动时,装载Servlet的次序。当值为正数或零时,Servlet容器先加载数值小的Servlet。当值为负或未定义时,Servlet容器将在Web客户首次访问这个Servlet时加载它。

<servlet-mapping> 用来定义Servlet所对应的URL,包含两个子元素

  • <servlet-name> 指定要映射的Servlet的名称。
  • <url-pattern> 指定servlet所对应的URL。

使用@webservlet注解也可以实现相同的功能。下面给出了@webservlet注解的属性以及与之对应的部署描述文件中的元素。

作者:madlike
链接:https://www.jianshu.com/p/3d782f5b7ebe
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

Deploy Descriptor的更多相关文章

  1. SOAP1.1 and SOAP1.2

    在用cxf 做webservice客户端的时候碰到的: javax.xml.ws.soap.SOAPFaultException: A SOAP 1.2 message is not valid wh ...

  2. 十六、详述 IntelliJ IDEA 创建 Maven 项目及设置 java 源目录的方法

    Maven 是一个优秀的项目管理工具,它为我们提供了一个构建完整的生命周期框架.现在,就让我们一起看看如何利用 IntelliJ IDEA 快速的创建 Maven 项目吧! 如上图所示,点击Creat ...

  3. Eclipse搭建Maven项目并上传SVN备份

    本文出自:http://www.cnblogs.com/2186009311CFF/p/7226127.html 背景:近段时间在学着Java,想着用Java做BS的项目.但是项目一遇到问题又要重做, ...

  4. maven的配置和使用

    Maven 简介 1.1 Maven 是什么 翻译为“专家”,“内行” Maven是跨平台的项目管理工具.主要服务于基于Java平台的项目构建,依赖管理和项目信息管理. 1.2 为什么使用Maven ...

  5. Maven:Failed to read artifact descriptor for xxx

    Maven多模块项目jar包引用问题: Failed to execute goal on project xxx-service: Could not resolve dependencies fo ...

  6. [原]Paste.deploy 与 WSGI, keystone 小记

    Paste.deploy 与 WSGI, keystone 小记 名词解释: Paste.deploy 是一个WSGI工具包,用于更方便的管理WSGI应用, 可以通过配置文件,将WSGI应用加载起来. ...

  7. 【初码干货】在Window Server 2016中使用Web Deploy方式发布.NET Web应用的重新梳理

    在学习和工作的过程中,发现很多同事.朋友,在做.NET Web应用发布的时候,依然在走 生成-复制到服务器 这样的方式,稍微高级一点的,就是先发布到本地,再上传到服务器 这种方式不仅效率低下,而且不易 ...

  8. eclipse 突然 一直在loading descriptor for XXX (XXX为工程名)Cancel Requested

    问题: eclipse 启动后,啥也不干,就一直在loading descriptor for XXX (XXX为工程名),,其他什么操作都不能操作. 如下图所示,保存文件也无法保存.  这个怎么办? ...

  9. Visual Studio 使用Web Deploy 3.6发布项目

    工具:Web Deploy 3.6 点击下载 (强烈推荐使用独立的Web Deploy 安装包安装) 配置: 1.安装web deploy,安装好之后,点击IIS根目录,此处应有如下图标 另外,需要注 ...

随机推荐

  1. QuerySet API

    模型objects:这个对象是 django.db.model.manager.Manger 的对象,这个类是一个空壳类,它上面的所有方法都是从 QuerySet 这个类中拷贝过来的. >> ...

  2. lambda Helper

    /// <summary> /// 操作表达式共通类,条件并且,或者操作等 /// </summary> public static class PredicateBuilde ...

  3. 使用scss为css样式自动添加浏览器前缀

    当一个浏览器实现一个新的属性.值或者选择器,而这个特征还不是处于候选推荐标准状态的时候,这属性的前面会添加一个前缀以便于它的渲染引擎识别. 浏览器使用前缀来尝试一些新属性.值和选择器,即使他们还没有最 ...

  4. MySQL中update修改数据与原数据相同会再次执行吗?

    作者:powdba 来源:阿里云栖社区 一.背景 本文主要测试MySQL执行update语句时,针对与原数据(即未修改)相同的update语句会在MySQL内部重新执行吗? 二.测试环境 MySQL5 ...

  5. 力扣(LeetCode)605. 种花问题

    假设你有一个很长的花坛,一部分地块种植了花,另一部分却没有.可是,花卉不能种植在相邻的地块上,它们会争夺水源,两者都会死去. 给定一个花坛(表示为一个数组包含0和1,其中0表示没种植花,1表示种植了花 ...

  6. Spark面试相关

    Spark Core面试篇01 随着Spark技术在企业中应用越来越广泛,Spark成为大数据开发必须掌握的技能.前期分享了很多关于Spark的学习视频和文章,为了进一步巩固和掌握Spark,在原有s ...

  7. legend2---开发日志10(ajax请求的方法是否同样会执行base控制器里面的方法)

    legend2---开发日志10(ajax请求的方法是否同样会执行base控制器里面的方法) 一.总结 一句话总结:会执行的,所以写base控制器里面的方法要注意,base控制器里面的方法要以查数据为 ...

  8. python中isdigit

    line = "12r45ofjo13jr3 3j"print line[0:3].isdigit()返回:false line = "12345ofjo13jr3 3j ...

  9. Flask实现异步非阻塞请求功能

    pip install gevent 关于gevent Gevent 是一个 Python 并发网络库,它使用了基于 libevent 事件循环的 greenlet 来提供一个高级同步 API.下面是 ...

  10. zzw_rsync命令中的/的作用

    [root@sv0379 rsync]# rsync -vzrtopg  --password-file=/usr/local/rsync/rsync.passwd  /opt/aspire/prod ...