学习的第一个注解@WebServlet - JavaWeb

achong
2022-04-11 / 0 评论 / 73 阅读 / 正在检测是否收录...

@WebServlet

@WebServlet的适当使用可以在一定程度上替代web.xml文件

  • name属性:用来指定Servlet的名字,等同于<servlet-name>
  • vlaue属性:用来指定Servlet的映射路径,可以指定多个字符串,等同于<url-pattern>
  • urlPatterns属性:用来指定Servlet的映射路径,可以指定多个字符串,等同于<url-pattern>
  • loadOnStartUp属性:用来指定在服务器启动阶段是否加载该Servlet,等同于<load-on-startup>

注意:

  1. 当注解的属性是一个数组,且数组中只有一个元素,大括号可以省略。

    @WebServlet(value="/hello")
  1. 如果注解的属性名是value的话,属性名也是可以省略的。

    @WebServlet("/hello")

​ 3.value和urlPatterns的作用是一样的。

@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 "";

    String[] value() default {};

    String[] urlPatterns() default {};

    int loadOnStartup() default -1;

    WebInitParam[] initParams() default {};

    boolean asyncSupported() default false;

    String smallIcon() default "";

    String largeIcon() default "";

    String description() default "";

    String displayName() default "";
}
0

评论 (0)

取消