public abstract class org.springframework.beans.annotation.AnnotationBeanUtils
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.springframework.beans.annotation.AnnotationBeanUtils
super_class: java.lang.Object
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/beans/annotation/AnnotationBeanUtils;
public static void copyPropertiesToBean(java.lang.annotation.Annotation, java.lang.Object, java.lang.String[]);
descriptor: (Ljava/lang/annotation/Annotation;Ljava/lang/Object;[Ljava/lang/String;)V
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aconst_null
aload 2
invokestatic org.springframework.beans.annotation.AnnotationBeanUtils.copyPropertiesToBean:(Ljava/lang/annotation/Annotation;Ljava/lang/Object;Lorg/springframework/util/StringValueResolver;[Ljava/lang/String;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 ann Ljava/lang/annotation/Annotation;
0 2 1 bean Ljava/lang/Object;
0 2 2 excludedProperties [Ljava/lang/String;
MethodParameters:
Name Flags
ann
bean
excludedProperties
public static void copyPropertiesToBean(java.lang.annotation.Annotation, java.lang.Object, org.springframework.util.StringValueResolver, java.lang.String[]);
descriptor: (Ljava/lang/annotation/Annotation;Ljava/lang/Object;Lorg/springframework/util/StringValueResolver;[Ljava/lang/String;)V
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=3, locals=13, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.util.HashSet
dup
aload 3
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
astore 4
start local 4 1: aload 0
invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
invokevirtual java.lang.Class.getDeclaredMethods:()[Ljava/lang/reflect/Method;
astore 5
start local 5 2: aload 1
invokestatic org.springframework.beans.PropertyAccessorFactory.forBeanPropertyAccess:(Ljava/lang/Object;)Lorg/springframework/beans/BeanWrapper;
astore 6
start local 6 3: aload 5
dup
astore 10
arraylength
istore 9
iconst_0
istore 8
goto 12
StackMap locals: java.lang.annotation.Annotation java.lang.Object org.springframework.util.StringValueResolver java.lang.String[] java.util.Set java.lang.reflect.Method[] org.springframework.beans.BeanWrapper top int int java.lang.reflect.Method[]
StackMap stack:
4: aload 10
iload 8
aaload
astore 7
start local 7 5: aload 7
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
astore 11
start local 11 6: aload 4
aload 11
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 11
aload 6
aload 11
invokeinterface org.springframework.beans.BeanWrapper.isWritableProperty:(Ljava/lang/String;)Z
ifeq 11
7: aload 7
aload 0
invokestatic org.springframework.util.ReflectionUtils.invokeMethod:(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
astore 12
start local 12 8: aload 2
ifnull 10
aload 12
instanceof java.lang.String
ifeq 10
9: aload 2
aload 12
checkcast java.lang.String
invokeinterface org.springframework.util.StringValueResolver.resolveStringValue:(Ljava/lang/String;)Ljava/lang/String;
astore 12
10: StackMap locals: java.lang.annotation.Annotation java.lang.Object org.springframework.util.StringValueResolver java.lang.String[] java.util.Set java.lang.reflect.Method[] org.springframework.beans.BeanWrapper java.lang.reflect.Method int int java.lang.reflect.Method[] java.lang.String java.lang.Object
StackMap stack:
aload 6
aload 11
aload 12
invokeinterface org.springframework.beans.BeanWrapper.setPropertyValue:(Ljava/lang/String;Ljava/lang/Object;)V
end local 12 end local 11 end local 7 11: StackMap locals: java.lang.annotation.Annotation java.lang.Object org.springframework.util.StringValueResolver java.lang.String[] java.util.Set java.lang.reflect.Method[] org.springframework.beans.BeanWrapper top int int java.lang.reflect.Method[]
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
12: iload 8
iload 9
if_icmplt 4
13: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 ann Ljava/lang/annotation/Annotation;
0 14 1 bean Ljava/lang/Object;
0 14 2 valueResolver Lorg/springframework/util/StringValueResolver;
0 14 3 excludedProperties [Ljava/lang/String;
1 14 4 excluded Ljava/util/Set<Ljava/lang/String;>;
2 14 5 annotationProperties [Ljava/lang/reflect/Method;
3 14 6 bw Lorg/springframework/beans/BeanWrapper;
5 11 7 annotationProperty Ljava/lang/reflect/Method;
6 11 11 propertyName Ljava/lang/String;
8 11 12 value Ljava/lang/Object;
RuntimeVisibleParameterAnnotations:
0:
1:
2:
org.springframework.lang.Nullable()
3:
MethodParameters:
Name Flags
ann
bean
valueResolver
excludedProperties
}
SourceFile: "AnnotationBeanUtils.java"