public class org.springframework.jdbc.core.DataClassRowMapper<T> extends org.springframework.jdbc.core.BeanPropertyRowMapper<T>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.jdbc.core.DataClassRowMapper
super_class: org.springframework.jdbc.core.BeanPropertyRowMapper
{
private java.lang.reflect.Constructor<T> mappedConstructor;
descriptor: Ljava/lang/reflect/Constructor;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/lang/reflect/Constructor<TT;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private java.lang.String[] constructorParameterNames;
descriptor: [Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private java.lang.Class<?>[] constructorParameterTypes;
descriptor: [Ljava/lang/Class;
flags: (0x0002) ACC_PRIVATE
Signature: [Ljava/lang/Class<*>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.springframework.jdbc.core.BeanPropertyRowMapper.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/jdbc/core/DataClassRowMapper<TT;>;
public void <init>(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.springframework.jdbc.core.BeanPropertyRowMapper.<init>:(Ljava/lang/Class;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/jdbc/core/DataClassRowMapper<TT;>;
0 2 1 mappedClass Ljava/lang/Class<TT;>;
Signature: (Ljava/lang/Class<TT;>;)V
MethodParameters:
Name Flags
mappedClass
protected void initialize(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.springframework.jdbc.core.BeanPropertyRowMapper.initialize:(Ljava/lang/Class;)V
1: aload 0
aload 1
invokestatic org.springframework.beans.BeanUtils.getResolvableConstructor:(Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
putfield org.springframework.jdbc.core.DataClassRowMapper.mappedConstructor:Ljava/lang/reflect/Constructor;
2: aload 0
getfield org.springframework.jdbc.core.DataClassRowMapper.mappedConstructor:Ljava/lang/reflect/Constructor;
invokevirtual java.lang.reflect.Constructor.getParameterCount:()I
ifle 5
3: aload 0
aload 0
getfield org.springframework.jdbc.core.DataClassRowMapper.mappedConstructor:Ljava/lang/reflect/Constructor;
invokestatic org.springframework.beans.BeanUtils.getParameterNames:(Ljava/lang/reflect/Constructor;)[Ljava/lang/String;
putfield org.springframework.jdbc.core.DataClassRowMapper.constructorParameterNames:[Ljava/lang/String;
4: aload 0
aload 0
getfield org.springframework.jdbc.core.DataClassRowMapper.mappedConstructor:Ljava/lang/reflect/Constructor;
invokevirtual java.lang.reflect.Constructor.getParameterTypes:()[Ljava/lang/Class;
putfield org.springframework.jdbc.core.DataClassRowMapper.constructorParameterTypes:[Ljava/lang/Class;
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/jdbc/core/DataClassRowMapper<TT;>;
0 6 1 mappedClass Ljava/lang/Class<TT;>;
Signature: (Ljava/lang/Class<TT;>;)V
MethodParameters:
Name Flags
mappedClass
protected T constructMappedInstance(java.sql.ResultSet, org.springframework.beans.TypeConverter);
descriptor: (Ljava/sql/ResultSet;Lorg/springframework/beans/TypeConverter;)Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.springframework.jdbc.core.DataClassRowMapper.mappedConstructor:Ljava/lang/reflect/Constructor;
ifnull 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ldc "Mapped constructor was not initialized"
invokestatic org.springframework.util.Assert.state:(ZLjava/lang/String;)V
3: aload 0
getfield org.springframework.jdbc.core.DataClassRowMapper.constructorParameterNames:[Ljava/lang/String;
ifnull 13
aload 0
getfield org.springframework.jdbc.core.DataClassRowMapper.constructorParameterTypes:[Ljava/lang/Class;
ifnull 13
4: aload 0
getfield org.springframework.jdbc.core.DataClassRowMapper.constructorParameterNames:[Ljava/lang/String;
arraylength
anewarray java.lang.Object
astore 3
start local 3 5: iconst_0
istore 4
start local 4 6: goto 11
7: StackMap locals: java.lang.Object[] int
StackMap stack:
aload 0
aload 0
getfield org.springframework.jdbc.core.DataClassRowMapper.constructorParameterNames:[Ljava/lang/String;
iload 4
aaload
invokevirtual org.springframework.jdbc.core.DataClassRowMapper.underscoreName:(Ljava/lang/String;)Ljava/lang/String;
astore 5
start local 5 8: aload 0
getfield org.springframework.jdbc.core.DataClassRowMapper.constructorParameterTypes:[Ljava/lang/Class;
iload 4
aaload
astore 6
start local 6 9: aload 3
iload 4
aload 2
aload 0
aload 1
aload 1
aload 5
invokeinterface java.sql.ResultSet.findColumn:(Ljava/lang/String;)I
aload 6
invokevirtual org.springframework.jdbc.core.DataClassRowMapper.getColumnValue:(Ljava/sql/ResultSet;ILjava/lang/Class;)Ljava/lang/Object;
aload 6
invokeinterface org.springframework.beans.TypeConverter.convertIfNecessary:(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
aastore
end local 6 end local 5 10: iinc 4 1
StackMap locals:
StackMap stack:
11: iload 4
aload 3
arraylength
if_icmplt 7
end local 4 12: goto 14
end local 3 13: StackMap locals:
StackMap stack:
iconst_0
anewarray java.lang.Object
astore 3
start local 3 14: StackMap locals: java.lang.Object[]
StackMap stack:
aload 0
getfield org.springframework.jdbc.core.DataClassRowMapper.mappedConstructor:Ljava/lang/reflect/Constructor;
aload 3
invokestatic org.springframework.beans.BeanUtils.instantiateClass:(Ljava/lang/reflect/Constructor;[Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/springframework/jdbc/core/DataClassRowMapper<TT;>;
0 15 1 rs Ljava/sql/ResultSet;
0 15 2 tc Lorg/springframework/beans/TypeConverter;
5 13 3 args [Ljava/lang/Object;
14 15 3 args [Ljava/lang/Object;
6 12 4 i I
8 10 5 name Ljava/lang/String;
9 10 6 type Ljava/lang/Class<*>;
Exceptions:
throws java.sql.SQLException
Signature: (Ljava/sql/ResultSet;Lorg/springframework/beans/TypeConverter;)TT;
MethodParameters:
Name Flags
rs
tc
public static <T> org.springframework.jdbc.core.DataClassRowMapper<T> newInstance(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Lorg/springframework/jdbc/core/DataClassRowMapper;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new org.springframework.jdbc.core.DataClassRowMapper
dup
aload 0
invokespecial org.springframework.jdbc.core.DataClassRowMapper.<init>:(Ljava/lang/Class;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 mappedClass Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Lorg/springframework/jdbc/core/DataClassRowMapper<TT;>;
MethodParameters:
Name Flags
mappedClass
public static <T> org.springframework.jdbc.core.DataClassRowMapper<T> newInstance(java.lang.Class<T>, org.springframework.core.convert.ConversionService);
descriptor: (Ljava/lang/Class;Lorg/springframework/core/convert/ConversionService;)Lorg/springframework/jdbc/core/DataClassRowMapper;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokestatic org.springframework.jdbc.core.DataClassRowMapper.newInstance:(Ljava/lang/Class;)Lorg/springframework/jdbc/core/DataClassRowMapper;
astore 2
start local 2 1: aload 2
aload 1
invokevirtual org.springframework.jdbc.core.DataClassRowMapper.setConversionService:(Lorg/springframework/core/convert/ConversionService;)V
2: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 mappedClass Ljava/lang/Class<TT;>;
0 3 1 conversionService Lorg/springframework/core/convert/ConversionService;
1 3 2 rowMapper Lorg/springframework/jdbc/core/DataClassRowMapper<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;Lorg/springframework/core/convert/ConversionService;)Lorg/springframework/jdbc/core/DataClassRowMapper<TT;>;
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
mappedClass
conversionService
}
Signature: <T:Ljava/lang/Object;>Lorg/springframework/jdbc/core/BeanPropertyRowMapper<TT;>;
SourceFile: "DataClassRowMapper.java"