[/b][b]新增的注解支持
Servlet 3.0的部署描述文件web.xml的顶层标签<web-app>有一个metadata-complete属性,该属性指定当前的部署描述文件是否是完全的。如果设置为true,则容器在部署时将只依赖部署描述文件,忽略所有的注解(同时也会跳过web-fragment.xml的扫描,亦即禁用可插性支持,具体请看后文关于可插性支持的讲解);如果不配置该属性,或者将其设置为false,则表示启用注解支持(和可插性支持)。
@WebServlet
@WebServlet用于将一个类声明为Servlet,该注解将会在部署时被容器处理,容器将根据具体的属性配置将相应的类部署为Servlet。该注解具有下表给出的一些常用属性(以下所有属性均为可选属性,但是vlaue或者urlPatterns通常是必需的,且二者不能共存,如果同时指定,通常是忽略value的取值):
属性名类型描述
1.nameString指定Servlet的name属性,等价于<servlet-name>。如果没有显式指定,则该Servlet的取值即为类的全限定名。
2.valueString[]该属性等价于urlPatterns属性。两个属性不能同时使用。
3.urlPatternsString[]指定一组Servlet的URL匹配模式。等价于<url-pattern>标签。
4.loadOnStartupint指定Servlet的加载顺序,等价于<load-on-startup>标签。
5.initParamsWebInitParam[]指定一组Servlet初始化参数,等价于<init-param>标签。
6.asyncSupportedboolean声明Servlet是否支持异步操作模式,等价于<async-supported>标签。
7.descriptionString该Servlet的描述信息,等价于<description>标签。
8.displayNameString该Servlet的显示名,通常配合工具使用,等价于<display-name>标签。
下面是一个简单的示例:
@WebServlet(urlPatterns={"/simple"},asyncSupported=true, loadOnStartup=-1,name="SimpleServlet",displayName="ss",
initParams={@WebInitParam(name="username",value="tom")} ) publicclassSimpleServletextendsHttpServlet{…}
如此配置之后,就可以不必在web.xml中配置相应的<servlet>和<servlet-mapping>元素了,容器会在部署时根据指定的属性将该类发布为Servlet。它的等价的web.xml配置形式如下:
<servlet>
<display-name>ss</display-name>
<servlet-name>SimpleServlet</servlet-name>
<servlet-class>footmark.servlet.SimpleServlet</servlet-class>
<load-on-startup>-1</load-on-startup>
<async-supported>true</async-supported>
<init-param>
<param-name>username</param-name>
<param-value>tom</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>SimpleServlet</servlet-name>
<url-pattern>/simple</url-pattern>
</servlet-mapping>
@WebInitParam
该注解通常不单独使用,而是配合@WebServlet或者@WebFilter使用。它的作用是为Servlet或者过滤器指定初始化参数,这等价于web.xml中<servlet>和<filter>的<init-param>子标签。@WebInitParam具有下表给出的一些常用属性:
属性名类型是否可选描述
◆nameString否指定参数的名字,等价于 <param-name>。
◆valueString否指定参数的值,等价于 <param-value>。
◆descriptionString是关于参数的描述,等价于 <description>。
@WebFilter
@WebFilter用于将一个类声明为过滤器,该注解将会在部署时被容器处理,容器将根据具体的属性配置将相应的类部署为过滤器。该注解具有下表给出的一些常用属性(以下所有属性均为可选属性,但是value、urlPatterns、servletNames三者必需至少包含一个,且value和urlPatterns不能共存,如果同时指定,通常忽略value的取值):
分享到:
相关推荐
Servlet3.0是Java EE平台中的一个重要组成部分,它在Servlet2.5的基础上引入了许多新特性,极大地提高了开发效率和灵活性。以下是对Servlet3.0主要特性的详细解释: 1. **注解配置**: 在Servlet3.0中,我们可以...
### Servlet 3.0 新增功能详解 #### 引言 Servlet 技术自问世以来一直是 Java Web 开发的核心组成部分之一。随着技术的发展,Servlet 规范也在不断更新以适应新的需求和技术趋势。Servlet 3.0 版本是 Java EE 6 的...
第03课 servlet3.0新特性之@WebServlet_@WebInitParam详解 第04课 servlet3.0新特性之@WebFilter_@WebListener 第05课 JQuery AJAX 注册验证+二级菜单(JSON) 第06课 mybatis 框架搭建 第07课 mybatis 增删改查 第...
《Java Web开发详解——XML+DTD+XML Schema+XSLT+Servlet3.0+JSP2.2深入剖析与实例应用》内容全面,涵盖了从事Java Web开发所应掌握的所有知识,同时还讲解了最新的Servlet 3.0和JSP 2.2规范新增的特性。在知识的...
Servlet 3.0 新特性详解 Servlet 3.0 的出现标志着 Servlet 历史上最大的变革,其中的许多新特性大大简化了 Web 应用开发,为广大劳苦的程序员减轻了压力,提高了 Web 开发效率。下面,我们将详细解释 Servlet 3.0 ...
这篇详解将深入剖析Servlet3.0的特性,以及如何利用这些特性构建微框架。 1. **注解驱动的配置** Servlet3.0引入了注解来替代传统的XML配置,大大简化了部署描述符web.xml的编写。例如,可以使用`@WebServlet`直接...
#### 一、Servlet 3.0概述与新特性 Servlet 3.0 是 Java EE 6 的一部分,它引入了许多新的特性和改进,使得开发者能够更方便地开发 Web 应用程序。其中一个重要特性就是支持使用注解来配置过滤器(Filter),这大大...
这个压缩包包含了两个关键资源,一个是"Servlet 3.0 新特性详解 .doc",这可能是一个详细的文档,涵盖了Servlet 3.0的所有新功能和技术亮点;另一个是"servlet-api-3.0.jar",这是Servlet 3.0 API的实现库,用于在...
**JSP 3.0 技术详解** JavaServer Pages(JSP)是Java平台上的一个标准技术,用于创建动态web应用程序。JSP 3.0是其最新的版本,引入了多项改进和新特性,旨在提升开发效率和代码可维护性。本教程将深入解析JSP 3.0...
Servlet注解是Java EE中Servlet 3.0版本引入的一项重要特性,极大地简化了Servlet的配置和管理。在Servlet 2.5及之前版本中,Servlet、Filter和Listener的配置通常需要在`web.xml`文件中手动编写XML元素,而Servlet ...
Servlet 3.0是Java Servlet规范的一个重要版本,它引入了许多新特性,显著提升了开发效率和灵活性。在Servlet 3.0之前,我们通常需要一个`web.xml`部署描述符文件来配置Servlet,但在Servlet 3.0之后,我们可以实现...
xt.complete(); // 结束异步上下文 } catch (IllegalStateException e) { ...为了充分利用这些特性,你需要确保你的应用服务器支持Servlet 3.0或3.1规范,同时在编写Servlet时适配这些新特性,以实现高效的异步处理。
### Servlet 3.0 新特性详解 #### 一、异步处理支持 Servlet 3.0 最引人注目的新特性之一就是异步处理支持。在此之前,Servlet 的生命周期模型是同步阻塞式的,即Servlet 接收客户端请求后,会执行一系列业务逻辑...
- **MyEclipse10.0或以上版本**:为了确保能够使用Servlet3.0的新特性,开发环境至少需要是MyEclipse10.0或更高版本。 - **Tomcat7.0或以上版本**:部署Servlet3.0的应用程序时,服务器环境也需支持新特性,因此...
1. **Servlet3.0特性**: - 自动扫描:Servlet3.0引入了自动扫描容器,无需在web.xml中配置Servlet,只需在类上添加`@WebServlet`注解即可。 - 异步处理:Servlet3.0支持异步处理,提高了服务器对高并发请求的响应...
此外,Servlet3.0引入了注解配置,允许在Servlet类上直接声明: ```java @WebServlet("/MyServlet") public class MyServlet extends HttpServlet { // ... } ``` 在Servlet中处理请求和响应主要通过重写`doGet()...
最后,Servlet 3.0还引入了一些其他特性,比如支持异步处理、过滤器和监听器的注解配置,以及更灵活的部署选项。这些改进进一步简化了Servlet的开发和管理,增强了其功能。 总结来说,Java Servlet通过XML配置或...
8. **Servlet 3.0新特性**:从Servlet 3.0版本开始,支持注解驱动的Servlet配置,无需web.xml,可以直接在Servlet类上使用`@WebServlet`注解。同时,还引入了异步Servlet处理和WebSocket协议支持。 9. **安全性**:...
7. **Servlet 3.0及以上版本的新特性**:Servlet 3.0引入了注解配置,无需在web.xml中配置Servlet,可以直接在类上使用`@WebServlet`注解。此外,还支持异步处理,使Servlet能更高效地处理长时间运行的任务。 8. **...
**SpringMVC 3.0 框架详解** SpringMVC是Spring框架的一个模块,专为构建Web应用程序提供模型-视图-控制器(MVC)架构。在SpringMVC 3.0版本中,引入了许多增强功能和优化,使得开发更加高效且灵活。这个名为...