public interface org.springframework.cache.annotation.Cacheable extends java.lang.annotation.Annotation
  minor version: 0
  major version: 59
  flags: flags: (0x2601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT, ACC_ANNOTATION
  this_class: org.springframework.cache.annotation.Cacheable
  super_class: java.lang.Object
{
  public abstract java.lang.String[] value();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    AnnotationDefault: {}
    RuntimeVisibleAnnotations: 
      org.springframework.core.annotation.AliasFor(value = "cacheNames")

  public abstract java.lang.String[] cacheNames();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    AnnotationDefault: {}
    RuntimeVisibleAnnotations: 
      org.springframework.core.annotation.AliasFor(value = "value")

  public abstract java.lang.String key();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    AnnotationDefault: ""

  public abstract java.lang.String keyGenerator();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    AnnotationDefault: ""

  public abstract java.lang.String cacheManager();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    AnnotationDefault: ""

  public abstract java.lang.String cacheResolver();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    AnnotationDefault: ""

  public abstract java.lang.String condition();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    AnnotationDefault: ""

  public abstract java.lang.String unless();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    AnnotationDefault: ""

  public abstract boolean sync();
    descriptor: ()Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    AnnotationDefault: false
}
SourceFile: "Cacheable.java"
    RuntimeVisibleAnnotations: 
      java.lang.annotation.Target(value = {java.lang.annotation.ElementType.METHOD:Ljava/lang/annotation/ElementType;, java.lang.annotation.ElementType.TYPE:Ljava/lang/annotation/ElementType;})
      java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME:Ljava/lang/annotation/RetentionPolicy;)
      java.lang.annotation.Inherited()
      java.lang.annotation.Documented()