Spring----组合注解与元注解

Posted anpeiyong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring----组合注解与元注解相关的知识,希望对你有一定的参考价值。

1、概述

    1.1、Spring提供了大量的注解,

        尤其是相同的注解用到各个类中,会相当的啰嗦;

    1.2、元注解

        可以注解到别的注解上的注解;

      组合注解

        被注解注解的注解称为 组合注解;

        组合注解  具备 元注解  的功能,Spring的很多注解都可以作为元注解;

    1.3、案例

package com.an.config;

import com.an.annotation.MyAnnotation;

/**
 * @description:
 * @author: anpeiyong
 * @date: Created in 2019/11/21 8:57
 * @since:
 */
@MyAnnotation(value = "com.an")
public class AnnotationConfig {
}

  

package com.an.annotation;

import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @description:
 * @author: anpeiyong
 * @date: Created in 2019/11/21 8:47
 * @since:
 */
@Target(value = ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Configuration
@ComponentScan
public @interface MyAnnotation {

    String[] value() default {};

}

  

package com.an.annotation;

import org.springframework.stereotype.Service;

/**
 * @description:
 * @author: anpeiyong
 * @date: Created in 2019/11/21 8:54
 * @since:
 */
@Service
public class AnnotationService {

    public void output(){
        System.out.println("组合注解成功。。。");
    }
}

  

package com.an.main;

import com.an.annotation.AnnotationService;
import com.an.config.AnnotationConfig;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;

/**
 * @description:
 * @author: anpeiyong
 * @date: Created in 2019/11/21 8:57
 * @since:
 */
public class AnnotationMainTest {

    public static void main(String[] args) {
        AnnotationConfigApplicationContext annotationConfigApplicationContext=new AnnotationConfigApplicationContext(AnnotationConfig.class);
        AnnotationService annotationService=annotationConfigApplicationContext.getBean(AnnotationService.class);
        annotationService.output();
        annotationConfigApplicationContext.close();
    }
}


结果:
组合注解成功。。。

  

以上是关于Spring----组合注解与元注解的主要内容,如果未能解决你的问题,请参考以下文章

Spring Boot实战笔记-- Spring高级话题(组合注解与元注解)

组合注解与元注解

Spring----组合注解与元注解

JavaEE开发之Spring中的条件注解组合注解与元注解

GroovyMOP 元对象协议与元编程 ( 方法委托 | 使用 @Delegate 注解进行方法委托 )

Spring 常用注解大全