spring系列笔记之常用注解

前言

Spring的一个核心功能是IOC,就是将Bean初始化加载到容器中,Bean是如何加载到容器的,可以使用Spring注解方式或者Spring XML配置方式。

Spring注解方式减少了配置文件内容,更加便于管理,并且使用注解可以大大提高了开发效率!

该篇文章主要做下注解的笔记,以免我经常忘记~

先给个demo

package com.nuofankj.springdemo.resource;

import java.lang.annotation.*;

@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface ResourceConfig {

}

先从@Target说起,此处直接查看源码并加上注释

public enum ElementType {
 /** 类, 接口 (包括注释类型), 或 枚举 声明 */
 TYPE,

 /** 字段声明(包括枚举常量) */
 FIELD,

 /** 方法声明(Method declaration) */
 METHOD,

 /** 正式的参数声明 */
 PARAMETER,

 /** 构造函数声明 */
 CONSTRUCTOR,

 /** 局部变量声明 */
 LOCAL_VARIABLE,

 /** 注释类型声明 */
 ANNOTATION_TYPE,

 /** 包声明 */
 PACKAGE,

 /**
  * 类型参数声明
  */
 TYPE_PARAMETER,

 /**
  * 使用的类型
  */
 TYPE_USE
}

很明显@Target 这个枚举提供了一个简单的分类,即可能出现在Java程序中的位置。

接下来查看@Retention,同样查看源码

public enum RetentionPolicy {

 /**
  * 注释只在源代码级别保留,编译时被忽略
  */
 SOURCE,

 /**
  * 注释将被编译器在类文件中记录但在运行时不需要JVM保留。这是默认的行为
  */
 CLASS,

 /**
  *注释将被编译器记录在类文件中,运行时保留VM,因此可以反读。
  */
 RUNTIME
}

意思便是:RetentionPolicy这个枚举类型的常量描述了保留注释的各种策略,即指定注释要保留多长时间。

最后一个是@Documented,这个表明这个注解javadoc是记录的。即如果一个类型声明被注释了文档化,它的注释成为公共API的一部分。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。

你可能感兴趣的:(spring系列笔记之常用注解)