Java 之 Servlet 3.0

Servlet 3.0

好处:

  支持注解配置,不需要 web.xml 文件了。

步骤:

  (1)创建 Java EE 项目,注意:JavaEE 版本必须6.0以上才支持Servlet3.0,可以不创建 web.xml 文件。

  (2)定义一个类,实现 Servlet 接口

  (3)重写 Servlet 方法

  (4)在类上使用 @WebServlt 注解,进行配置

  (5)定义的Java 类

 1 import javax.servlet.*;
 2 import javax.servlet.annotation.WebServlet;
 3 import java.io.IOException;
 4
 5 //@WebServlet(urlPatterns = "/demo")
 6 @WebServlet("/demo")
 7 public class ServletDemo implements Servlet {
 8     @Override
 9     public void init(ServletConfig servletConfig) throws ServletException {
10
11     }
12
13     @Override
14     public ServletConfig getServletConfig() {
15         return null;
16     }
17
18     @Override
19     public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
20         System.out.println("servlet 3.0");
21     }
22
23     @Override
24     public String getServletInfo() {
25         return null;
26     }
27
28     @Override
29     public void destroy() {
30
31     }
32 }

  (6)@WebServlet 代码

 1 //
 2 // Source code recreated from a .class file by IntelliJ IDEA
 3 // (powered by Fernflower decompiler)
 4 //
 5
 6 package javax.servlet.annotation;
 7
 8 import java.lang.annotation.Documented;
 9 import java.lang.annotation.ElementType;
10 import java.lang.annotation.Retention;
11 import java.lang.annotation.RetentionPolicy;
12 import java.lang.annotation.Target;
13
14 @Target({ElementType.TYPE})
15 @Retention(RetentionPolicy.RUNTIME)
16 @Documented
17 public @interface WebServlet {
18     String name() default "";          //相当于<Servlet-name>
19
20     String[] value() default {};       //代表urlPatterns()属性配置
21
22     String[] urlPatterns() default {}; //相当于<url-pattern>
23
24     int loadOnStartup() default -1;    //相当于<load-on-startup>
25
26     WebInitParam[] initParams() default {};
27
28     boolean asyncSupported() default false;
29
30     String smallIcon() default "";
31
32     String largeIcon() default "";
33
34     String description() default "";
35
36     String displayName() default "";
37 }

原文地址:https://www.cnblogs.com/niujifei/p/11617731.html

时间: 2024-10-20 06:21:09

Java 之 Servlet 3.0的相关文章

Java EE - Servlet 3.0 和 Spring MVC

Table of Contents 前言 基于 Java 的配置 ServletContainerInitializer 动态配置 DispatcherServlet 和 ContextLoaderListener 两个应用上下文 配置过程 结语 参考链接 前言 在学习 Spring MVC 的过程中发现,Spring MVC 使用了不少 Servlet 3.0 的新特性,但鉴于我学习 Servlet 使用的教程是 <Head First Servlet & JSP>,其中的 Serv

Servlet 3.0 新特性详解

转自:https://www.ibm.com/developerworks/cn/java/j-lo-servlet30/ Servlet 3.0 新特性详解 张 建平2010 年 4 月 23 日发布 WeiboGoogle+用电子邮件发送本页面 6 Servlet 3.0 新特性概述 Servlet 3.0 作为 Java EE 6 规范体系中一员,随着 Java EE 6 规范一起发布.该版本在前一版本(Servlet 2.5)的基础上提供了若干新特性用于简化 Web 应用的开发和部署.其

Servlet 3.0 新特性详解 (转载)

原文地址:https://www.ibm.com/developerworks/cn/java/j-lo-servlet30/ Servlet 3.0 新特性概述 Servlet 3.0 作为 Java EE 6 规范体系中一员,随着 Java EE 6 规范一起发布.该版本在前一版本(Servlet 2.5)的基础上提供了若干新特性用于简化 Web 应用的开发和部署.其中有几项特性的引入让开发者感到非常兴奋,同时也获得了 Java 社区的一片赞誉之声: 异步处理支持:有了该特性,Servlet

Ed Burns谈HTTP/2和Java EE Servlet 4规范

在2015年JavaLand大会上,Ed Burns展示了Java EE Servlet 4.0规范(JSR 369)的概要,演讲的重点在于Java EE平台对HTTP/2的支持.HTTP/2旨在解决现存HTTP规范中的问题,并引入新的功能,包括request/response多路复用.二进制帧传输(binary framing).数据流优先级.服务器推送和头信息压缩. Burns是Oracle公司的技术顾问之一,他从由于HTTP/1.1中固有的缺陷,导致当前典型网站的30多种资源传输到浏览器端

java Servlet 3.0新特性例子

迟到的作业,Servlet3.0 已经出来很久了也没去关注,一直守旧于老的技术,今天抽时间学习了一下补个作业. Servlet3.0  特性: 1.Servlet.Filter.Listener无需在web.xml中进行配置,可以通过Annotation进行配置: 2.模块化编程,即将各个Servlet模块化,将配置文件也分开配置. 3.Servlet异步处理,应对复杂业务处理: 4.异步Listener,对于异步处理的创建.完成等进行监听: 5. 文件上传API简化: 备注:tomcat7.0

java servlet 3.0文件上传

在以前,处理文件上传是一个很痛苦的事情,大都借助于开源的上传组件,诸如commons fileupload等.现在好了,很方便,便捷到比那些组件都方便至极.以前的HTML端上传表单不用改变什么,还是一样的multipart/form-data MIME类型. 让Servlet支持上传,需要做两件事情 需要添加MultipartConfig注解 从request对象中获取Part文件对象 但在具体实践中,还是有一些细节处理,诸如设置上传文件的最大值,上传文件的保存路径. 需要熟悉Multipart

如何使用Java、Servlet创建二维码

归功于智能手机,QR码逐渐成为主流,它们正变得越来越有用.从候车亭.产品包装.家装卖场.汽车到很多网站,都在自己的网页集成QR码,让人们快速找到它们.随着智能手机的用户量日益增长,二维码的使用正在呈指数上升. 让我们来看看QR码的简要概述,以及如何在Java中生成它们. QR码介绍 QR码(Quick Response 快速响应码)是矩阵条形码(或二维码)的一种类型,最先为于汽车行业而设计.得益于其快速读取性和较大的存储容量,QR码开始在汽车行业以外流行.图案是在白色背景上由有序排列的黑色方块组

关于 tomcat nio connector, servlet 3.0 async, spring mvc async 的关系

tomcat 的 org.apache.coyote.http11.Http11NioProtocol Connector 是一个使用 Java NIO 实现的异步 accept 请求的 connector 它的作用是不需要为每个请求建立一个线程, 而是使用固定的accept线程 accept 多个请求, 然后排队处理. 大概的意思是使用固定的 acceptThread 来 accept n 个请求, 然后将请求入队, 最后使用固定的 requestProcessingThread 来处理业务逻

(转)如何使用Java、Servlet创建二维码

归功于智能手机,QR码逐渐成为主流,它们正变得越来越有用.从候车亭.产品包装.家装卖场.汽车到很多网站,都在自己的网页集成QR码,让人们快速找到它们.随着智能手机的用户量日益增长,二维码的使用正在呈指数上升. 让我们来看看QR码的简要概述,以及如何在Java中生成它们. QR码介绍 QR码(Quick Response 快速响应码)是矩阵条形码(或二维码)的一种类型,最先为于汽车行业而设计.得益于其快速读取性和较大的存储容量,QR码开始在汽车行业以外流行.图案是在白色背景上由有序排列的黑色方块组