Servlet 3.0

好处:

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

步骤:

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

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

  (3)重写 Servlet 方法

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

  (5)定义的Java 类

 import javax.servlet.*;
import javax.servlet.annotation.WebServlet;
import java.io.IOException; //@WebServlet(urlPatterns = "/demo")
@WebServlet("/demo")
public class ServletDemo implements Servlet {
@Override
public void init(ServletConfig servletConfig) throws ServletException { } @Override
public ServletConfig getServletConfig() {
return null;
} @Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
System.out.println("servlet 3.0");
} @Override
public String getServletInfo() {
return null;
} @Override
public void destroy() { }
}

  (6)@WebServlet 代码

 //
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
// package javax.servlet.annotation; import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target; @Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface WebServlet {
String name() default ""; //相当于<Servlet-name> String[] value() default {}; //代表urlPatterns()属性配置 String[] urlPatterns() default {}; //相当于<url-pattern> int loadOnStartup() default -1; //相当于<load-on-startup> WebInitParam[] initParams() default {}; boolean asyncSupported() default false; String smallIcon() default ""; String largeIcon() default ""; String description() default ""; String displayName() default "";
}

最新文章

  1. windows命令
  2. CSRF token 无法被验证. ----Yii连接数据库后数据库错误日志报错
  3. 超级编辑器--VIM的常见操作
  4. NOIP2015提高组Day1 Message
  5. matrix-tree
  6. [Android Tips] 15. Enforcing spaces in string resources
  7. 几种网络加载的过渡(更新MaterialProgressBar)
  8. REVOKE DBA权限要小心
  9. Could not load file or assembly&amp;#39;System.Data.SQLite.dll&amp;#39; or one of its depedencies
  10. linux下zookeeper 配置参数
  11. switch处理多分支结构
  12. css中的float和position
  13. 后缀自动机(SAM)学习笔记
  14. String 和 StringBuilder
  15. Abp + gRpc 如何实现用户会话状态传递
  16. Java加载dll或so库文件的路径 java.library.path
  17. react学习入门
  18. com.android.providers.telephony.MmsSmsDatabaseHelper
  19. 【Unity】3.2 利用预设(Prefab)制作可复用的组件
  20. js dom 创建table标签和子属性, 以及创建多选框

热门文章

  1. ajax请求传base64太大,springboot后台无法接收
  2. PostgreSQL中的The Oversized-Attribute Storage Technique(TOAST:超大属性存储技术)
  3. 002 vue-resource
  4. 帆软 联合 创始人 数据可视化 中国 发展 FineReport FineBI
  5. html页面自适应宽度
  6. 安卓 android studio 报错 The specified Android SDK Build Tools version (27.0.3) is ignored, as it is below the minimum supported version (28.0.3) for Android Gradle
  7. 【SSH进阶之路】Spring的AOP逐层深入——采用注解完成AOP(七)
  8. python基础教程(2)
  9. LeetCode 788. 旋转数字(Rotated Digits) 36
  10. # Java类链接模型