Java学习笔记-全栈-web开发-13-JavaWeb注解

学习目标:通过JavaWeb注解,了解注解开发模式,为spring注解开发铺路。

JavaWeb注解

  • 1. 简述
  • 2. Java中的三个基本注解
  • 3. 声明注解(了解)
  • 4. 元注解(重要)
  • 5. Servlet常用注解


1. 简述

注解不是注释,注释是程序员写的,给程序员看的。
注解给程序看的,用于描述程序如何运行及在什么阶段来运行。

注解在实际开发中,最大的功能是用于替换配置文件

注解是jdk1.5的新特性

可以通过反射来让注解具有功能

注解的格式: @xxxx

注解的本质是一个接口,这个接口需要继承 Annotation接口

2. Java中的三个基本注解

@Override:检查子类确实是覆盖/重写了父类的方法。
当我们重写\覆盖父类方法时,很多编辑器都会自动帮我们加上这个注解

@Deprecated:在方法上加上这个注解,说明该方法已经过时了,不建议使用

@SuppressWarnings({ “unused”, “deprecation” }):抑制程序中的警告。unused警告的类型。。all抑制所有警告

Java学习笔记-全栈-web开发-13-JavaWeb注解_第1张图片

3. 声明注解(了解)

如何声明注解

  • Step1:创建一个注解 @interface 注解名{}
  • Step2:声明注解中的成员(注解的属性类型可以有哪些?)
    1.基本类型
    2.String
    3.枚举类型
    4.注解类型
    5.Class类型
    6.以上类型的一维数组类型
    Step3:使用注解

Java学习笔记-全栈-web开发-13-JavaWeb注解_第2张图片Java学习笔记-全栈-web开发-13-JavaWeb注解_第3张图片

现在这个注解没有任何作用,但是我们能够通过反射获取注解中的值,然后将这些值注入到model中(或程序中)

在开发中,通常都是使用框架自带的注解
对自定义注解感兴趣的可以自行百度学习

4. 元注解(重要)

用于修饰注解的注解被称为元注解。

注解的存活范围分为

  • SOURCE:源文件阶段生效
  • CLASS:字节码文件阶段生效
  • RUNTIME:运行时生效

若为SOURCE、CLASS,则在运行时注解已经失效,因此不能通过反射访问注解

自定义注解的生命周期默认是CLASS(在CLASS中生效)

Java学习笔记-全栈-web开发-13-JavaWeb注解_第4张图片

四个元注解:

  • @Retention:用来描述被修饰的注解的生命周期

    • RetentionPolicy
      • SOURCE
      • CLASS
      • RUNTIME
  • @Target:用于指定被修饰的注解的适用范围,即被修饰的注解可以用来修饰哪些程序元素。

    • ElementType:
      • TYPE:
      • METHOD:
      • FIELD:
      • ANNOTATION_TYPE
  • @Documented:用于指定被修饰的注解将被javadoc工具提取成文档。

  • @Inherited:用于指定被@Inherited修饰的注解具有继承性,可以被继承。

5. Servlet常用注解

@WebServlet
指定映射路径

在这里插入图片描述通过localhost:8080/DownloadServlet就可以访问该Servlet

@WebFilter
声明该Filter的作用对象
Java学习笔记-全栈-web开发-13-JavaWeb注解_第5张图片

@WebFilter("/*")表示对任意访问路径都生效

你可能感兴趣的:(Java-web开发)