@WebServlet注解(Servlet注解)

2023-10-30

@WebServlet注解


前言

Servlet 中,web.xml 扮演的角色十分的重要,它可以将所有的 Servlet 的配置集中进行管理,但是若项目中 Servelt 数量较多时,web.xml 的配置会变得十分的冗长。这种情况下,注解(Annotation)就是一种更好的选择。


提示:以下是本篇文章正文内容,下面案例可供参考

一、@WebServlet 注解的属性

在这里插入图片描述

二、@WebServlet 注解的使用

1. 启用注解支持

web.xml 的顶层标签 中有一个属性:metadata-complete,该属性用于指定当前 web.xml 是否是完全的。若该属性设置为 true,则容器在部署时将只依赖 web.xml,忽略所有的注解。若不配置该属性,或者将其设置为 false,则表示启用注解支持。
由于 metadata-complete 属性的默认值是 false,即默认启用 Servlet 注解支持,所以默认情况下,使用该注解时,不必创建 web.xml 文件。

2.使用 @WebServlet 注解

@WebServlet 属于类级别的注解,标注在继承了 HttpServlet 的类之上。常用的写法是将 Servlet 的相对请求路径(即 value)直接写在注解内,
@WebServlet(​urlPatterns = “/MyServlet”)。
@Web​Servlet(“/MyServlet”) 省略了 urlPatterns 属性名
如果 @WebServlet 中需要设置多个属性,则属性之间必须使用逗号隔开.
通过实现 Serlvet 接口或继承 GenericServlet 创建的 Servlet 类无法使用 @WebServlet 注解。
使用 @WebServlet 注解配置的 Servlet 类,不要在 web.xml 文件中再次配置该 Servlet 相关属性。若同时使用 web.xml 与 @WebServlet 配置同一 Servlet 类,则 web.xml 中 的值与注解中 name 取值不能相同,否则容器会忽略注解中的配置。


@WebServlet 注解 和 web.xml 的区别

使用 web.xml 或 @WebServlet 注解都可以配置 Servlet
@WebServlet 注解配置 Servlet
优点:@WebServlet 直接在 Servlet 类中使用,代码量少,配置简单。每个类只关注自身业务逻辑,与其他 Servlet 类互不干扰,适合多人同时开发。
缺点:Servlet 较多时,每个 Servlet 的配置分布在各自的类中,不便于查找和修改。

web.xml 配置文件配置 Servlet
优点:集中管理 Servlet 的配置,便于查找和修改。
缺点:代码较繁琐,可读性不强,不易于理解。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

@WebServlet注解(Servlet注解) 的相关文章

随机推荐

  • 计算机管理 服务无响应,如何解决系统服务没有及时响应启动 ?

    原标题 如何解决系统服务没有及时响应启动 最近有位朋友在使用电脑的时候 遇到了Windows无法启动服务错误 1053 服务没有及时响应启动或控制请求RRS feed的情况 不知道怎么回事 其实 这种情况原因比较多 比如说电脑不正确的超时设
  • python机器学习基础04——sklearn之朴素贝叶斯

    文章目录 朴素贝叶斯算法 高斯模型 多项式模型 朴素贝叶斯算法 相关重点处 https blog csdn net xiaoyoupei article details 122641753 贝叶斯思想 其实就是计算出条件概率 也就是某条件情
  • 2.5.9 构架虚拟Fiber Channel (vFC)

    最后更新2021 07 30 架构虚拟FC比虚拟scsi更简单 但有一些额外的要求 主要的需求包括 使用vFC的分区只支持AIX v5 3 TL10 v6 1 TL2或者SUSE Linux Enterprise Server 11以后版本
  • 判断一个对象是否有某一个属性

    如果我们要检测xiaoming是否拥有某一属性 可以用in操作符 var xiaoming name 小明 birth 1990 school No 1 Middle School height 1 70 weight 65 score n
  • 关于poc的查找

    1 已知漏洞cve号 1 github https github com 2 twitter https twitter com home 3 直接浏览器搜索 google 百度 4 微信搜索 2 批量找poc 1 发现者3号有github
  • 爬虫:从入门到入狱,进去一起做兄弟

    从入门到入狱 中国爬虫违法违规案例汇总 1 一 什么是爬虫 二 爬虫的分类 搜索引擎 百度 谷歌 数据采集 天眼查 企查查 薅羊毛 抢票机器人 秒杀软件 比价软件 微博僵尸粉 三 爬虫与反爬虫 1 君子协议 robots txt www b
  • Chrome浏览器禁用更新

    操作步骤 我的电脑 进入目录 C Windows System32 drivers etc 修改hosts文件 在末尾添加 127 0 0 1 update googleapis com 保存并退出 按win r 快捷键 输入cmd打开命令
  • spring-mvc的重定向和转发

    重定向和转发 servlet的方法 Controller public class ResultGo 在页面上打印 RequestMapping result t1 public void test1 HttpServletRequest
  • 终于弄懂tf.reduce_sum()函数和tf.reduce_mean()函数

    参考博客 1 https www zhihu com question 51325408 answer 125426642 2 https www w3cschool cn tensorflow python tensorflow pyth
  • typescript 提示 Object is possibly null

    Object is possibly null 对象可能是null 分析 localStorage getItem SET HISTORY KEY 这个值有可能为空 所以再执行getItem就会报错此刻对象可能为空 解决 联合类型 把nul
  • linux单进程最大内存,限制单个Linux进程的内存使用量

    我正在运行pdftoppm将用户提供的PDF转换为300DPI图像 这非常有用 除非用户提供的页面大小非常大 pdftoppm将分配足够的内存来在内存中保存该大小的300DPI图像 对于100英寸的方形页面 每像素100 300 100 3
  • 关于Postman无法显示中文的解决方案(翻译)

    在使用Postman时很多人因为界面是纯英文的感到很头疼 会面临不知道什么意思及界面看不懂的情况 于是出现了需要将界面汉化翻译过来的需求 但从实际工作经验来讲 个人还是比较喜欢看英文界面的 可能也是看习惯了导致的吧 本文以两种方式帮助读者理
  • FPGA虚拟时钟约束详解

    FPGA虚拟时钟约束详解 在FPGA设计中 时钟是一个至关重要的因素 为了确保时序分析的准确性 并满足特定应用对时钟精度的要求 我们需要通过时钟约束来对FPGA设计进行优化和配置 本文将详细介绍FPGA虚拟时钟约束的原理与实现方法 一 什么
  • 2023,软件测试人的未来在哪里?

    2023年 IT行业出现空前的萧条 首先是年初一开始各大厂像着了魔似的不约而同的纷纷裁员 降薪 奖金包缩水 随之而来的是需求萎缩 HC减少或封锁等等 而有幸未被列入裁员名单的在职人员 庆幸之余也心有余悸 伴随着恐慌 说不定哪天裁员就轮到了自
  • Cocos2d C++与lua互相调用

    参考文章 cocos2dx之Lua调用C 与 cocos2dx之C 调用Lua 感谢 乐逍遥Jun的参考 我是用的是 3 13版本 创建一个 lua版本的工程 我的工程名称是 TestLua 一 lua 调用c 1 编写一个 ini文件 路
  • 自驱力超强的羊驼?斯坦福微调LLaMa

    大型 指令调优 语言模型在新任务上展现了Zero shot的卓越能力 但严重依赖于人类编写的指令数据 而这些数据在数量 多样性和创造性方面都是有限的 斯坦福科研人员引入了self instruction框架 提高指令遵循能力来自我迭代进化
  • 利用MATLAB做一维CNN分类 问题及解决方法

    利用MATLAB做一维数据的CNN分类 问题及解决方法 我在做一维CNN分类时参考了知乎凉拌西红柿答主的程序示例 根据其代码改编实现了CNN分类 其中遇到的问题与解决方法总结如下 1 数据维度转换问题 for i 1 1 3000 for
  • python字符识别_crnn(基于pytorch、python3) 实现不定长中文字符识别

    在六七月份参加了一个比赛 做的项目是提取图片中的文字信息 首先是接触了一些文本检测算法 如CTPN East 后研究了文本识别算法 我认为较好的是CRNN 代码实现是参考算法提出者的pytorch python3版本的crnn实现 因为py
  • Oracle 删除命令详解

    Oracle 删除表方式分为三种 第一种 drop 命令 drop table 表名 实战 drop table erms biz accep management drop table ERMS BIZ ARCH COMPANY SPEC
  • @WebServlet注解(Servlet注解)

    WebServlet注解 文章目录 WebServlet注解 前言 一 WebServlet 注解的属性 二 WebServlet 注解的使用 1 启用注解支持 2 使用 WebServlet 注解 WebServlet 注解 和 web