当前位置:网站首页>@WebServlet注解(Servlet注解)
@WebServlet注解(Servlet注解)
2022-08-01 23:41:00 【drhrht】
@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”)。
@WebServlet(“/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 的配置,便于查找和修改。
缺点:代码较繁琐,可读性不强,不易于理解。
先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦
边栏推荐
- 切面打印调取的方法
- 一道golang中关于iota的面试题
- 请问什么是 CICD
- What is CICD excuse me
- 云原生DevOps环境搭建
- Getting started with IDEA is enough to read this article
- Secondary Vocational Network Security Competition B7 Competition Deployment Process
- YOLO等目标检测模型的非极大值抑制NMS和评价指标(Acc, Precision, Recall, AP, mAP, RoI)、YOLOv5中[email protected]与
- TCP 可靠吗?为什么?
- 计算两点之间的中点
猜你喜欢
Flink学习第三天——一文带你了解什么是Flink流?
Various Joins of Sql
chrome copies the base64 data of an image
请问什么是 CICD
软件测试之移动APP安全测试简析,北京第三方软件检测机构分享
[LeetCode304周赛] 两道关于基环树的题 6134. 找到离给定两个节点最近的节点,6135. 图中的最长环
Background project Express-Mysql-Vue3-TS-Pinia page layout-sidebar menu
Is TCP reliable?Why?
2022第六届强网杯部分wp
UI自动化测试框架搭建-标记性能较差用例
随机推荐
软件测试之移动APP安全测试简析,北京第三方软件检测机构分享
LocalDateTime转为Date类型
云原生DevOps环境搭建
cmd指令
bat 之 特殊字符&转义
The monthly salary of the test post is 5-9k, how to increase the salary to 25k?
如何更好的理解的和做好工作?
对于在新标签页中打开的链接,始终使用“noopener”或“noreferrer”
ICLR 2022最佳论文:基于对比消歧的偏标签学习
Calculate the midpoint between two points
Flink学习第四天——完成第一个Flink 流批一体案例
sys_kill system call
Check if point is inside rectangle
ICLR 2022 Best Paper: Partial Label Learning Based on Contrastive Disambiguation
斜堆、、、
加载字体时避免隐藏文本
An interview question about iota in golang
npm npm
A. Doremy‘s IQ-- Codeforces Round #808 (Div. 1)
Secondary Vocational Network Security Competition B7 Competition Deployment Process