Servlet 3.0
一、新特性
1、增加新注解 @WebServlet、@WebFilter、@WebListener
2、异步支持: 在注解中或web.xml部署描述符声明的Servlet、Filer中声明async-supported为true即可,默认async-supported为false
3、可支持性插件:不修改已有Web,只需按一定格式(即:jar包的META-INFO目录下有web-fragment.xml文件)打成jar包,放到WAR包WEB-INFO\lib目录下,即可实现新功能的扩充。
注:1、可插拔jar包中的 @WebServlet、@WebFilter、@WebListener不起作用,Servlet、Filter、Listener必须显示声明到web-fragment.xml中,或者在ServletContainerInitializer子类动态注册,或者在ServletContextListener的contexInitialized方法中动态注册
2、web-fragment.xml中可用name和order标签指定加载顺序
3、WAR包中web.xml必须设置metadata-complete为true才支持可插拔特性,默认为false
4、ServletContext增强动态注册功能:不在部署描述符或web-fragment.xml中声明Servlet、Filter、Listener,动态注入三者
注:1、 动态注册只能在ServletContainerInitializer的onStarup方法或ServletContextListener的contexInitialized中使用
2、不可在ServletContextListener中再次注入ServletContextListener的实现类
5、HttpServletRequest对文件上传的支持:
1、@MultipartConfig支持MIME类型是multipart/form-data
2、HttpServletRequest新增 Part getPart(String name)、Collection<Part> getParts()两个方法对文件处理
6、ServletContainerInitializer
1、子类可以用@HandlesTypes标注,也可以不用
2、可以一个应用有多个子类实现
3、用户代替web.xml,可以完成容器初试化时的一些操作,如:注册Servlet、Filter、Listener
4、实现子类必须在WAR包的META-INF\services下的 javax.servlet.ServletContainerInitializer文件中写入全子类名
5、子类可以在web-fragment模块中
7、使用@HandlesTypes机制,可使servlet与自定义程序解耦
Servlet 3.0相关推荐
- Servlet 3.0 新特性概述
Servlet 3.0 新特性概述 Servlet 3.0 作为 Java EE 6 规范体系中一员,随着 Java EE 6 规范一起发布.该版本在前一版本(Servlet 2.5)的基础上提供了若 ...
- Servlet 2.0 Servlet 3.0 新特性
概念:透传. Callback 在异步线程中是如何使用的.?? Servlet 2.0 && Servlet 3.0 新特性 Servlet 2.0 && Servle ...
- Servlet 3.0 新特性详解
https://www.ibm.com/developerworks/cn/java/j-lo-servlet30/ Servlet 3.0 新特性概述 Servlet 3.0 作为 Java EE ...
- servlet3.0新特性_查看Servlet 3.0的新增功能
servlet3.0新特性 随着JEE6规范上市,在企业应用程序领域中如何开发应用程序方面发生了一些重大变化. 在本文中,我将介绍有关Web应用程序开发的一些更改. 首先,请告别web.xml部署描述 ...
- servlet 3.0异步_Servlet 3.0异步处理可将服务器吞吐量提高十倍
servlet 3.0异步 Servlet是Java中处理服务器端逻辑的主要组件,新的3.0规范引入了一些非常有趣的功能,其中异步处理是最重要的功能之一. 可以利用异步处理来开发高度可伸缩的Web应用 ...
- 使用Servlet 3.0,Redis / Jedis和CDI的简单CRUD –第1部分
在这篇文章中,我们将构建一个简单的用户界面. 数据将存储在Redis中. 为了与Redis交互,我们将使用Jedis库. CDI用于Depedency Injection,而Servlet 3.0用于 ...
- 使用Servlet 3.0,Redis / Jedis和CDI的简单CRUD –第2部分
在本文中,我们将重点介绍CDI和Servlet 3.0. 您可以在此处看到第1部分. 让我们从CDI开始. 当我开始撰写源自该系列的文章时,我并没有考虑撰写CDI. 真诚地说,我以前从未使用过. 这篇 ...
- Servlet 3.0概述
Servlet 3.0 –具有许多突破性的功能,这些功能最终将改变开发人员编写和编写JEE Web应用程序的方式–有人可能会说,它的约定违背了我们对事物在理论上"应该"如何工作的大 ...
- 查看Servlet 3.0的新增功能
随着JEE6规范上市,在企业应用程序领域中如何开发应用程序方面发生了一些重大变化. 在本文中,我将介绍有关Web应用程序开发的一些更改. 首先,请告别web.xml部署描述符(至少是其中的一部分). ...
- 在Grails 2.0中使用Servlet 3.0异步功能
上周,我与某人谈论了Grails 2中对Servlet 3.0异步功能的新支持,并意识到我对可用功能并不了解. 所以我想我会尝试一下并分享一些例子. 该文档对这个主题有些了解,因此首先介绍一些背景信息 ...
最新文章
- $0,$?,$!,$-,$*,$@,$#等的特殊用法
- Verilog HDL 使用规范(一)
- Bootstrap基础二十七 多媒体对象(Media Object)
- 剑指offer(60-67题)详解
- linux qt 5移植,Qt 5.13支持处理Lottie文件,可以方便地进行移植
- php中的foreach如何使用?
- 为啥一到年底腾讯市值就大涨??????
- jyputer notebook 、jypyter、IPython basics
- 爬虫python代码网易云_python-网易云简单爬虫
- note_maven的pom.xml部分配置说明
- 口语化讲某些软件如BT,电驴,向日葵等穿透内网原理
- String与字节数组转换
- 白鹭引擎 - 矢量绘图 ( graphics )
- 关于javascript中时间格式和时间戳的转换
- opendrive格式完全解析
- matlab fftshift函数,matlab fft fftshift--【转帖】
- 【转载】你必须知道的10种国产编程语言
- uni-app 图片上传组件 canvas压缩
- 你们公司测试都用什么工具啊?
- 三年级语文计算机之父教学反思,三年级语文教学反思15篇
热门文章
- 马云卸任阿里CEO 演讲笔记
- 五大派玩家角逐移动资讯市场,微博如何成“另类”?
- Elasticsearch整合Mysql新闻搜索
- 几个学习Silverlight及Silverlight示例的网站
- 任天堂服务器修改,任天堂服务器设置
- 各品类市场占有率——通过互联网大数据了解各品类的市场占有率
- java 2%3等于多少,Java别说取余(%)运算简单你真的会吗
- 六、 MySQL函数
- 计算机进位制及其规则,进位计数制及其转换方法过程详解
- 2018.09.25软件更新公告