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; /**
* @author: lihui
* @date: 2020-05-20
*/
public class CompositeAnnotationStudy {
public static void main(String[] args) {
AnnotationTwo annotationTwo = ClassInAnnotation.class.getAnnotation(AnnotationTwo.class);
System.out.println(annotationTwo.basePackages());
AnnotationOne annotationOne = annotationTwo.annotationType().getAnnotation(AnnotationOne.class);
System.out.println(annotationOne.value()); System.out.println(annotationTwo.getClass().getAnnotation(AnnotationOne.class));
}
} @AnnotationTwo()
class ClassInAnnotation {
} @Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@AnnotationOne
@interface AnnotationTwo {
String basePackages() default "basePackages";
} @Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@interface AnnotationOne {
String value() default "value";
}

输出如下:

basePackages
value
null
可以看到:一个注解就可以得到许多种注解的信息。
注意:
获得一个注解的注解不是通过这种方式:
annotation.getClass().getAnnotation(AnnotationOne.class);
而是通过以下方式:
annotation.annotationType().getAnnotation(AnnotationOne.class);

组合注解(Annotation)的更多相关文章

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

    上篇博客我们详细的聊了<JavaEE开发之Spring中的多线程编程以及任务定时器详解>,本篇博客我们就来聊聊条件注解@Conditional以及组合条件.条件注解说简单点就是根据特定的条 ...

  2. [读书笔记] 二、条件注解@Conditional,组合注解,元注解

    一.条件注解@Conditional,组合注解,元注解 1. @Conditional:满足特定条件创建一个Bean,SpringBoot就是利用这个特性进行自动配置的. 例子: 首先,两个Condi ...

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

    一.组合注解与元注解 从Spring 2开始,为了响应JDK 1.5推出的注解功能,Spring开始大量加入注解来替代xml配置.Spring的注解主要用来配置注入Bean,切面相关配置(@Trans ...

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

    上篇博客我们详细的聊了<JavaEE开发之Spring中的多线程编程以及任务定时器详解>,本篇博客我们就来聊聊条件注解@Conditional以及组合条件.条件注解说简单点就是根据特定的条 ...

  5. Spring Boot 2 实践记录之 组合注解原理

    Spring 的组合注解功能,网上有很多文章介绍,不过都是介绍其使用方法,鲜有其原理解析. 组合注解并非 Java 的原生能力.就是说,想通过用「注解A」来注解「注解B」,再用「注解B」 来注解 C( ...

  6. spring boot: 组合注解与元注解

    package ch2.annotation; //target/elementType用来设定注解的使用范围 import java.lang.annotation.ElementType; imp ...

  7. Spring组合注解与元注解

    目录 注解说明 源代码 使用范例 注解说明 元注解:可以注解到别的注解上的注解,所以元注解首先基于条件@Target({ElementType.TYPE}) ,目标使用在类文件上 . 组合注解:连个元 ...

  8. Java的注解(Annotation)

    1.什么是注解 Annotation is code about the code, that is metadata about the program itself. Java注解,是Java5. ...

  9. Java Android 注解(Annotation) 及几个常用开源项目注解原理简析

    不少开源库(ButterKnife.Retrofit.ActiveAndroid等等)都用到了注解的方式来简化代码提高开发效率. 本文简单介绍下 Annotation 示例.概念及作用.分类.自定义. ...

随机推荐

  1. Alpha冲刺——4.30

    这个作业属于哪个课程 软件工程 这个作业要求在哪里 团队作业第五次--Alpha冲刺 这个作业的目标 Alpha冲刺 作业正文 正文 github链接 项目地址 其他参考文献 无 一.会议内容 1.规 ...

  2. Java实现 蓝桥杯 算法训练 纪念品分组

    问题描述 元旦快到了,校学生会让乐乐负责新年晚会的纪念品发放工作.为使得参加晚会的同学所获得的纪念品价值 相对均衡,他要把购来的纪念品根据价格进行分组,但每组最多只能包括两件纪念品,并且每组纪念品的价 ...

  3. Java实现 蓝桥杯VIP 算法提高 最小乘积(提高型)

    算法提高 最小乘积(提高型) 时间限制:1.0s 内存限制:512.0MB 问题描述 给两组数,各n个. 请调整每组数的排列顺序,使得两组数据相同下标元素对应相乘,然后相加的和最小.要求程序输出这个最 ...

  4. Java实现图形化计算器

    package java计算器; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionL ...

  5. Spring Data Jpa Specification 调用Oracle 函数/方法

    开发框架用的Jpa,数据库是 Oracle. 在开发中难免会遇到需要数据库字段是字符串格式,但是又需要对其进行范围查询(数据库设计问题,后续应避免).那么问题来了, Jpa Specification ...

  6. FT-8900, 8800,7800 , FT-897, 857 e 817 连接中继板接线图

    FT-8900, 8800,7800 , FT-897, 857 e 817 等 车台支持Moto GM950i GM300(只适合接收) GM3688等

  7. 记一次Docker中Redis连接暴增的问题排查

    周六生产服务器出现redis服务器不可用状态,错误信息为: 状态不可用,等待后台检查程序恢复方可使用.Unexpected end of stream; expected type 'Status' ...

  8. EasyARM-iMX257 linxu两年前的笔记

    第三章续:简单总结第三章中出现的命令! 1)  root@EasyARM-iMX257 ~# ddif=/dev/zero of=/dev/shm/disk bs=1024 count=10240 d ...

  9. GIT 仓库的搭建

    1.安装并配置必要的依赖关系 在CentOS 7(和RedHat / Oracle / Scientific Linux 7)上,以下命令还将在系统防火墙中打开HTTP和SSH访问. yum inst ...

  10. 免费 IP 代理池示例

    使用文档 import requests import re import random from concurrent.futures import ThreadPoolExecutor impor ...