zoukankan      html  css  js  c++  java
  • 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 }
  • 相关阅读:
    coding++ :局部 Loading 加载效果
    coding++:快速构建 kindeditor 富文本编辑器(一)
    POJ 1265 计算几何 多边形面积 内部格点数 边上格点数
    POJ 1385 计算几何 多边形重心
    POJ 1584 计算几何 凸包
    POJ 2653 计算几何
    POJ 3666 DP
    POJ 2184 DP 01背包+完全背包
    POJ 2392 DP 多重背包
    POJ 1930 数学
  • 原文地址:https://www.cnblogs.com/niujifei/p/11617731.html
Copyright © 2011-2022 走看看