public abstract class org.springframework.jdbc.object.RdbmsOperation implements org.springframework.beans.factory.InitializingBean
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.springframework.jdbc.object.RdbmsOperation
  super_class: java.lang.Object
{
  protected final org.apache.commons.logging.Log logger;
    descriptor: Lorg/apache/commons/logging/Log;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  private org.springframework.jdbc.core.JdbcTemplate jdbcTemplate;
    descriptor: Lorg/springframework/jdbc/core/JdbcTemplate;
    flags: (0x0002) ACC_PRIVATE

  private int resultSetType;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private boolean updatableResults;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean returnGeneratedKeys;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String[] generatedKeysColumnNames;
    descriptor: [Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  private java.lang.String sql;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  private final java.util.List<org.springframework.jdbc.core.SqlParameter> declaredParameters;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lorg/springframework/jdbc/core/SqlParameter;>;

  private volatile boolean compiled;
    descriptor: Z
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
         0: .line 61
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 64
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokestatic org.apache.commons.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
            putfield org.springframework.jdbc.object.RdbmsOperation.logger:Lorg/apache/commons/logging/Log;
         2: .line 67
            aload 0 /* this */
            new org.springframework.jdbc.core.JdbcTemplate
            dup
            invokespecial org.springframework.jdbc.core.JdbcTemplate.<init>:()V
            putfield org.springframework.jdbc.object.RdbmsOperation.jdbcTemplate:Lorg/springframework/jdbc/core/JdbcTemplate;
         3: .line 69
            aload 0 /* this */
            sipush 1003
            putfield org.springframework.jdbc.object.RdbmsOperation.resultSetType:I
         4: .line 71
            aload 0 /* this */
            iconst_0
            putfield org.springframework.jdbc.object.RdbmsOperation.updatableResults:Z
         5: .line 73
            aload 0 /* this */
            iconst_0
            putfield org.springframework.jdbc.object.RdbmsOperation.returnGeneratedKeys:Z
         6: .line 81
            aload 0 /* this */
            new java.util.LinkedList
            dup
            invokespecial java.util.LinkedList.<init>:()V
            putfield org.springframework.jdbc.object.RdbmsOperation.declaredParameters:Ljava/util/List;
         7: .line 61
            return
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/springframework/jdbc/object/RdbmsOperation;

  public void setJdbcTemplate(org.springframework.jdbc.core.JdbcTemplate);
    descriptor: (Lorg/springframework/jdbc/core/JdbcTemplate;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
        start local 1 // org.springframework.jdbc.core.JdbcTemplate jdbcTemplate
         0: .line 98
            aload 0 /* this */
            aload 1 /* jdbcTemplate */
            putfield org.springframework.jdbc.object.RdbmsOperation.jdbcTemplate:Lorg/springframework/jdbc/core/JdbcTemplate;
         1: .line 99
            return
        end local 1 // org.springframework.jdbc.core.JdbcTemplate jdbcTemplate
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/springframework/jdbc/object/RdbmsOperation;
            0    2     1  jdbcTemplate  Lorg/springframework/jdbc/core/JdbcTemplate;
    MethodParameters:
              Name  Flags
      jdbcTemplate  

  public org.springframework.jdbc.core.JdbcTemplate getJdbcTemplate();
    descriptor: ()Lorg/springframework/jdbc/core/JdbcTemplate;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
         0: .line 105
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.jdbcTemplate:Lorg/springframework/jdbc/core/JdbcTemplate;
            areturn
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/jdbc/object/RdbmsOperation;

  public void setDataSource(javax.sql.DataSource);
    descriptor: (Ljavax/sql/DataSource;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
        start local 1 // javax.sql.DataSource dataSource
         0: .line 113
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.jdbcTemplate:Lorg/springframework/jdbc/core/JdbcTemplate;
            aload 1 /* dataSource */
            invokevirtual org.springframework.jdbc.core.JdbcTemplate.setDataSource:(Ljavax/sql/DataSource;)V
         1: .line 114
            return
        end local 1 // javax.sql.DataSource dataSource
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/springframework/jdbc/object/RdbmsOperation;
            0    2     1  dataSource  Ljavax/sql/DataSource;
    MethodParameters:
            Name  Flags
      dataSource  

  public void setFetchSize(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
        start local 1 // int fetchSize
         0: .line 125
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.jdbcTemplate:Lorg/springframework/jdbc/core/JdbcTemplate;
            iload 1 /* fetchSize */
            invokevirtual org.springframework.jdbc.core.JdbcTemplate.setFetchSize:(I)V
         1: .line 126
            return
        end local 1 // int fetchSize
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/springframework/jdbc/object/RdbmsOperation;
            0    2     1  fetchSize  I
    MethodParameters:
           Name  Flags
      fetchSize  

  public void setMaxRows(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
        start local 1 // int maxRows
         0: .line 136
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.jdbcTemplate:Lorg/springframework/jdbc/core/JdbcTemplate;
            iload 1 /* maxRows */
            invokevirtual org.springframework.jdbc.core.JdbcTemplate.setMaxRows:(I)V
         1: .line 137
            return
        end local 1 // int maxRows
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/springframework/jdbc/object/RdbmsOperation;
            0    2     1  maxRows  I
    MethodParameters:
         Name  Flags
      maxRows  

  public void setQueryTimeout(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
        start local 1 // int queryTimeout
         0: .line 147
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.jdbcTemplate:Lorg/springframework/jdbc/core/JdbcTemplate;
            iload 1 /* queryTimeout */
            invokevirtual org.springframework.jdbc.core.JdbcTemplate.setQueryTimeout:(I)V
         1: .line 148
            return
        end local 1 // int queryTimeout
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/springframework/jdbc/object/RdbmsOperation;
            0    2     1  queryTimeout  I
    MethodParameters:
              Name  Flags
      queryTimeout  

  public void setResultSetType(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
        start local 1 // int resultSetType
         0: .line 159
            aload 0 /* this */
            iload 1 /* resultSetType */
            putfield org.springframework.jdbc.object.RdbmsOperation.resultSetType:I
         1: .line 160
            return
        end local 1 // int resultSetType
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/springframework/jdbc/object/RdbmsOperation;
            0    2     1  resultSetType  I
    MethodParameters:
               Name  Flags
      resultSetType  

  public int getResultSetType();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
         0: .line 166
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.resultSetType:I
            ireturn
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/jdbc/object/RdbmsOperation;

  public void setUpdatableResults(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
        start local 1 // boolean updatableResults
         0: .line 175
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.isCompiled:()Z
            ifeq 4
         1: .line 176
            new org.springframework.dao.InvalidDataAccessApiUsageException
            dup
         2: .line 177
            ldc "The updateableResults flag must be set before the operation is compiled"
         3: .line 176
            invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 179
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* updatableResults */
            putfield org.springframework.jdbc.object.RdbmsOperation.updatableResults:Z
         5: .line 180
            return
        end local 1 // boolean updatableResults
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    6     0              this  Lorg/springframework/jdbc/object/RdbmsOperation;
            0    6     1  updatableResults  Z
    MethodParameters:
                  Name  Flags
      updatableResults  

  public boolean isUpdatableResults();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
         0: .line 186
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.updatableResults:Z
            ireturn
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/jdbc/object/RdbmsOperation;

  public void setReturnGeneratedKeys(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
        start local 1 // boolean returnGeneratedKeys
         0: .line 195
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.isCompiled:()Z
            ifeq 4
         1: .line 196
            new org.springframework.dao.InvalidDataAccessApiUsageException
            dup
         2: .line 197
            ldc "The returnGeneratedKeys flag must be set before the operation is compiled"
         3: .line 196
            invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 199
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* returnGeneratedKeys */
            putfield org.springframework.jdbc.object.RdbmsOperation.returnGeneratedKeys:Z
         5: .line 200
            return
        end local 1 // boolean returnGeneratedKeys
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    6     0                 this  Lorg/springframework/jdbc/object/RdbmsOperation;
            0    6     1  returnGeneratedKeys  Z
    MethodParameters:
                     Name  Flags
      returnGeneratedKeys  

  public boolean isReturnGeneratedKeys();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
         0: .line 207
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.returnGeneratedKeys:Z
            ireturn
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/jdbc/object/RdbmsOperation;

  public void setGeneratedKeysColumnNames(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
        start local 1 // java.lang.String[] names
         0: .line 215
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.isCompiled:()Z
            ifeq 4
         1: .line 216
            new org.springframework.dao.InvalidDataAccessApiUsageException
            dup
         2: .line 217
            ldc "The column names for the generated keys must be set before the operation is compiled"
         3: .line 216
            invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 219
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* names */
            putfield org.springframework.jdbc.object.RdbmsOperation.generatedKeysColumnNames:[Ljava/lang/String;
         5: .line 220
            return
        end local 1 // java.lang.String[] names
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lorg/springframework/jdbc/object/RdbmsOperation;
            0    6     1  names  [Ljava/lang/String;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
       Name  Flags
      names  

  public java.lang.String[] getGeneratedKeysColumnNames();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
         0: .line 227
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.generatedKeysColumnNames:[Ljava/lang/String;
            areturn
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/jdbc/object/RdbmsOperation;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  public void setSql(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
        start local 1 // java.lang.String sql
         0: .line 234
            aload 0 /* this */
            aload 1 /* sql */
            putfield org.springframework.jdbc.object.RdbmsOperation.sql:Ljava/lang/String;
         1: .line 235
            return
        end local 1 // java.lang.String sql
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/springframework/jdbc/object/RdbmsOperation;
            0    2     1   sql  Ljava/lang/String;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
      Name  Flags
      sql   

  public java.lang.String getSql();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
         0: .line 243
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.sql:Ljava/lang/String;
            areturn
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/jdbc/object/RdbmsOperation;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  protected java.lang.String resolveSql();
    descriptor: ()Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
         0: .line 252
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.getSql:()Ljava/lang/String;
            astore 1 /* sql */
        start local 1 // java.lang.String sql
         1: .line 253
            aload 1 /* sql */
            ifnull 2
            iconst_1
            goto 3
      StackMap locals: java.lang.String
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: ldc "No SQL set"
            invokestatic org.springframework.util.Assert.state:(ZLjava/lang/String;)V
         4: .line 254
            aload 1 /* sql */
            areturn
        end local 1 // java.lang.String sql
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/springframework/jdbc/object/RdbmsOperation;
            1    5     1   sql  Ljava/lang/String;

  public void setTypes(int[]);
    descriptor: ([I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
        start local 1 // int[] types
         0: .line 267
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.isCompiled:()Z
            ifeq 2
         1: .line 268
            new org.springframework.dao.InvalidDataAccessApiUsageException
            dup
            ldc "Cannot add parameters once query is compiled"
            invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 270
      StackMap locals:
      StackMap stack:
            aload 1 /* types */
            ifnull 8
         3: .line 271
            aload 1 /* types */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 7
      StackMap locals: org.springframework.jdbc.object.RdbmsOperation int[] top int int int[]
      StackMap stack:
         4: aload 5
            iload 3
            iaload
            istore 2 /* type */
        start local 2 // int type
         5: .line 272
            aload 0 /* this */
            new org.springframework.jdbc.core.SqlParameter
            dup
            iload 2 /* type */
            invokespecial org.springframework.jdbc.core.SqlParameter.<init>:(I)V
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.declareParameter:(Lorg/springframework/jdbc/core/SqlParameter;)V
        end local 2 // int type
         6: .line 271
            iinc 3 1
      StackMap locals:
      StackMap stack:
         7: iload 3
            iload 4
            if_icmplt 4
         8: .line 275
      StackMap locals: org.springframework.jdbc.object.RdbmsOperation int[]
      StackMap stack:
            return
        end local 1 // int[] types
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Lorg/springframework/jdbc/object/RdbmsOperation;
            0    9     1  types  [I
            5    6     2   type  I
    Exceptions:
      throws org.springframework.dao.InvalidDataAccessApiUsageException
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
       Name  Flags
      types  

  public void declareParameter(org.springframework.jdbc.core.SqlParameter);
    descriptor: (Lorg/springframework/jdbc/core/SqlParameter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
        start local 1 // org.springframework.jdbc.core.SqlParameter param
         0: .line 290
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.isCompiled:()Z
            ifeq 2
         1: .line 291
            new org.springframework.dao.InvalidDataAccessApiUsageException
            dup
            ldc "Cannot add parameters once the query is compiled"
            invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 293
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.declaredParameters:Ljava/util/List;
            aload 1 /* param */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 294
            return
        end local 1 // org.springframework.jdbc.core.SqlParameter param
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/springframework/jdbc/object/RdbmsOperation;
            0    4     1  param  Lorg/springframework/jdbc/core/SqlParameter;
    Exceptions:
      throws org.springframework.dao.InvalidDataAccessApiUsageException
    MethodParameters:
       Name  Flags
      param  

  public void setParameters(org.springframework.jdbc.core.SqlParameter[]);
    descriptor: ([Lorg/springframework/jdbc/core/SqlParameter;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
        start local 1 // org.springframework.jdbc.core.SqlParameter[] parameters
         0: .line 304
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.isCompiled:()Z
            ifeq 2
         1: .line 305
            new org.springframework.dao.InvalidDataAccessApiUsageException
            dup
            ldc "Cannot add parameters once the query is compiled"
            invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 307
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 11
         4: .line 308
      StackMap locals: int
      StackMap stack:
            aload 1 /* parameters */
            iload 2 /* i */
            aaload
            ifnull 7
         5: .line 309
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.declaredParameters:Ljava/util/List;
            aload 1 /* parameters */
            iload 2 /* i */
            aaload
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         6: .line 310
            goto 10
         7: .line 312
      StackMap locals:
      StackMap stack:
            new org.springframework.dao.InvalidDataAccessApiUsageException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Cannot add parameter at index "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " from "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         8: .line 313
            aload 1 /* parameters */
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " since it is 'null'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         9: .line 312
            invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 307
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 2 /* i */
            aload 1 /* parameters */
            arraylength
            if_icmplt 4
        end local 2 // int i
        12: .line 316
            return
        end local 1 // org.springframework.jdbc.core.SqlParameter[] parameters
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0        this  Lorg/springframework/jdbc/object/RdbmsOperation;
            0   13     1  parameters  [Lorg/springframework/jdbc/core/SqlParameter;
            3   12     2           i  I
    MethodParameters:
            Name  Flags
      parameters  

  protected java.util.List<org.springframework.jdbc.core.SqlParameter> getDeclaredParameters();
    descriptor: ()Ljava/util/List;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
         0: .line 322
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.declaredParameters:Ljava/util/List;
            areturn
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/jdbc/object/RdbmsOperation;
    Signature: ()Ljava/util/List<Lorg/springframework/jdbc/core/SqlParameter;>;

  public void afterPropertiesSet();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
         0: .line 331
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.compile:()V
         1: .line 332
            return
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/springframework/jdbc/object/RdbmsOperation;

  public final void compile();
    descriptor: ()V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
         0: .line 341
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.isCompiled:()Z
            ifne 11
         1: .line 342
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.getSql:()Ljava/lang/String;
            ifnonnull 3
         2: .line 343
            new org.springframework.dao.InvalidDataAccessApiUsageException
            dup
            ldc "Property 'sql' is required"
            invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 347
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.jdbcTemplate:Lorg/springframework/jdbc/core/JdbcTemplate;
            invokevirtual org.springframework.jdbc.core.JdbcTemplate.afterPropertiesSet:()V
         4: .line 348
            goto 7
         5: .line 349
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
            astore 1 /* ex */
        start local 1 // java.lang.IllegalArgumentException ex
         6: .line 350
            new org.springframework.dao.InvalidDataAccessApiUsageException
            dup
            aload 1 /* ex */
            invokevirtual java.lang.IllegalArgumentException.getMessage:()Ljava/lang/String;
            invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.IllegalArgumentException ex
         7: .line 353
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.compileInternal:()V
         8: .line 354
            aload 0 /* this */
            iconst_1
            putfield org.springframework.jdbc.object.RdbmsOperation.compiled:Z
         9: .line 356
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.logger:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isDebugEnabled:()Z
            ifeq 11
        10: .line 357
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.logger:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "RdbmsOperation with SQL ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.getSql:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "] compiled"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
        11: .line 360
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lorg/springframework/jdbc/object/RdbmsOperation;
            6    7     1    ex  Ljava/lang/IllegalArgumentException;
      Exception table:
        from    to  target  type
           3     4       5  Class java.lang.IllegalArgumentException
    Exceptions:
      throws org.springframework.dao.InvalidDataAccessApiUsageException

  public boolean isCompiled();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
         0: .line 369
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.compiled:Z
            ireturn
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/jdbc/object/RdbmsOperation;

  protected void checkCompiled();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
         0: .line 379
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.isCompiled:()Z
            ifne 3
         1: .line 380
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.logger:Lorg/apache/commons/logging/Log;
            ldc "SQL operation not compiled before execution - invoking compile"
            invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
         2: .line 381
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.compile:()V
         3: .line 383
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/springframework/jdbc/object/RdbmsOperation;

  protected void validateParameters(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
        start local 1 // java.lang.Object[] parameters
         0: .line 393
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.checkCompiled:()V
         1: .line 394
            iconst_0
            istore 2 /* declaredInParameters */
        start local 2 // int declaredInParameters
         2: .line 395
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.declaredParameters:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 11
      StackMap locals: org.springframework.jdbc.object.RdbmsOperation java.lang.Object[] int top java.util.Iterator
      StackMap stack:
         3: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.jdbc.core.SqlParameter
            astore 3 /* param */
        start local 3 // org.springframework.jdbc.core.SqlParameter param
         4: .line 396
            aload 3 /* param */
            invokevirtual org.springframework.jdbc.core.SqlParameter.isInputValueProvided:()Z
            ifeq 11
         5: .line 397
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.supportsLobParameters:()Z
            ifne 10
         6: .line 398
            aload 3 /* param */
            invokevirtual org.springframework.jdbc.core.SqlParameter.getSqlType:()I
            sipush 2004
            if_icmpeq 7
            aload 3 /* param */
            invokevirtual org.springframework.jdbc.core.SqlParameter.getSqlType:()I
            sipush 2005
            if_icmpne 10
         7: .line 399
      StackMap locals: org.springframework.jdbc.object.RdbmsOperation java.lang.Object[] int org.springframework.jdbc.core.SqlParameter java.util.Iterator
      StackMap stack:
            new org.springframework.dao.InvalidDataAccessApiUsageException
            dup
         8: .line 400
            ldc "BLOB or CLOB parameters are not allowed for this kind of operation"
         9: .line 399
            invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 402
      StackMap locals:
      StackMap stack:
            iinc 2 /* declaredInParameters */ 1
        end local 3 // org.springframework.jdbc.core.SqlParameter param
        11: .line 395
      StackMap locals: org.springframework.jdbc.object.RdbmsOperation java.lang.Object[] int top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        12: .line 405
            aload 0 /* this */
            aload 1 /* parameters */
            ifnull 13
            aload 1 /* parameters */
            arraylength
            goto 14
      StackMap locals: org.springframework.jdbc.object.RdbmsOperation java.lang.Object[] int
      StackMap stack: org.springframework.jdbc.object.RdbmsOperation
        13: iconst_0
      StackMap locals: org.springframework.jdbc.object.RdbmsOperation java.lang.Object[] int
      StackMap stack: org.springframework.jdbc.object.RdbmsOperation int
        14: iload 2 /* declaredInParameters */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.validateParameterCount:(II)V
        15: .line 406
            return
        end local 2 // int declaredInParameters
        end local 1 // java.lang.Object[] parameters
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   16     0                  this  Lorg/springframework/jdbc/object/RdbmsOperation;
            0   16     1            parameters  [Ljava/lang/Object;
            2   16     2  declaredInParameters  I
            4   11     3                 param  Lorg/springframework/jdbc/core/SqlParameter;
    Exceptions:
      throws org.springframework.dao.InvalidDataAccessApiUsageException
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
            Name  Flags
      parameters  

  protected void validateNamedParameters(java.util.Map<java.lang.String, ?>);
    descriptor: (Ljava/util/Map;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
        start local 1 // java.util.Map parameters
         0: .line 416
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.checkCompiled:()V
         1: .line 417
            aload 1 /* parameters */
            ifnull 2
            aload 1 /* parameters */
            goto 3
      StackMap locals:
      StackMap stack:
         2: invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
      StackMap locals:
      StackMap stack: java.util.Map
         3: astore 2 /* paramsToUse */
        start local 2 // java.util.Map paramsToUse
         4: .line 418
            iconst_0
            istore 3 /* declaredInParameters */
        start local 3 // int declaredInParameters
         5: .line 419
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.declaredParameters:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 18
      StackMap locals: org.springframework.jdbc.object.RdbmsOperation java.util.Map java.util.Map int top java.util.Iterator
      StackMap stack:
         6: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.jdbc.core.SqlParameter
            astore 4 /* param */
        start local 4 // org.springframework.jdbc.core.SqlParameter param
         7: .line 420
            aload 4 /* param */
            invokevirtual org.springframework.jdbc.core.SqlParameter.isInputValueProvided:()Z
            ifeq 18
         8: .line 421
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.supportsLobParameters:()Z
            ifne 13
         9: .line 422
            aload 4 /* param */
            invokevirtual org.springframework.jdbc.core.SqlParameter.getSqlType:()I
            sipush 2004
            if_icmpeq 10
            aload 4 /* param */
            invokevirtual org.springframework.jdbc.core.SqlParameter.getSqlType:()I
            sipush 2005
            if_icmpne 13
        10: .line 423
      StackMap locals: org.springframework.jdbc.object.RdbmsOperation java.util.Map java.util.Map int org.springframework.jdbc.core.SqlParameter java.util.Iterator
      StackMap stack:
            new org.springframework.dao.InvalidDataAccessApiUsageException
            dup
        11: .line 424
            ldc "BLOB or CLOB parameters are not allowed for this kind of operation"
        12: .line 423
            invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 426
      StackMap locals:
      StackMap stack:
            aload 4 /* param */
            invokevirtual org.springframework.jdbc.core.SqlParameter.getName:()Ljava/lang/String;
            ifnull 17
            aload 2 /* paramsToUse */
            aload 4 /* param */
            invokevirtual org.springframework.jdbc.core.SqlParameter.getName:()Ljava/lang/String;
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 17
        14: .line 427
            new org.springframework.dao.InvalidDataAccessApiUsageException
            dup
            new java.lang.StringBuilder
            dup
            ldc "The parameter named '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* param */
            invokevirtual org.springframework.jdbc.core.SqlParameter.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        15: .line 428
            ldc "' was not among the parameters supplied: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* paramsToUse */
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        16: .line 427
            invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;)V
            athrow
        17: .line 430
      StackMap locals:
      StackMap stack:
            iinc 3 /* declaredInParameters */ 1
        end local 4 // org.springframework.jdbc.core.SqlParameter param
        18: .line 419
      StackMap locals: org.springframework.jdbc.object.RdbmsOperation java.util.Map java.util.Map int top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        19: .line 433
            aload 0 /* this */
            aload 2 /* paramsToUse */
            invokeinterface java.util.Map.size:()I
            iload 3 /* declaredInParameters */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.validateParameterCount:(II)V
        20: .line 434
            return
        end local 3 // int declaredInParameters
        end local 2 // java.util.Map paramsToUse
        end local 1 // java.util.Map parameters
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   21     0                  this  Lorg/springframework/jdbc/object/RdbmsOperation;
            0   21     1            parameters  Ljava/util/Map<Ljava/lang/String;*>;
            4   21     2           paramsToUse  Ljava/util/Map<Ljava/lang/String;*>;
            5   21     3  declaredInParameters  I
            7   18     4                 param  Lorg/springframework/jdbc/core/SqlParameter;
    Exceptions:
      throws org.springframework.dao.InvalidDataAccessApiUsageException
    Signature: (Ljava/util/Map<Ljava/lang/String;*>;)V
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
            Name  Flags
      parameters  

  private void validateParameterCount(int, int);
    descriptor: (II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
        start local 1 // int suppliedParamCount
        start local 2 // int declaredInParamCount
         0: .line 442
            iload 1 /* suppliedParamCount */
            iload 2 /* declaredInParamCount */
            if_icmpge 4
         1: .line 443
            new org.springframework.dao.InvalidDataAccessApiUsageException
            dup
            new java.lang.StringBuilder
            dup
            iload 1 /* suppliedParamCount */
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " parameters were supplied, but "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 444
            iload 2 /* declaredInParamCount */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " in parameters were declared in class ["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 443
            invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 446
      StackMap locals:
      StackMap stack:
            iload 1 /* suppliedParamCount */
            aload 0 /* this */
            getfield org.springframework.jdbc.object.RdbmsOperation.declaredParameters:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmple 8
            aload 0 /* this */
            invokevirtual org.springframework.jdbc.object.RdbmsOperation.allowsUnusedParameters:()Z
            ifne 8
         5: .line 447
            new org.springframework.dao.InvalidDataAccessApiUsageException
            dup
            new java.lang.StringBuilder
            dup
            iload 1 /* suppliedParamCount */
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " parameters were supplied, but "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 448
            iload 2 /* declaredInParamCount */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " parameters were declared in class ["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 447
            invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 450
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int declaredInParamCount
        end local 1 // int suppliedParamCount
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    9     0                  this  Lorg/springframework/jdbc/object/RdbmsOperation;
            0    9     1    suppliedParamCount  I
            0    9     2  declaredInParamCount  I
    MethodParameters:
                      Name  Flags
      suppliedParamCount    
      declaredInParamCount  

  protected abstract void compileInternal();
    descriptor: ()V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws org.springframework.dao.InvalidDataAccessApiUsageException

  protected boolean supportsLobParameters();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
         0: .line 467
            iconst_1
            ireturn
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/jdbc/object/RdbmsOperation;

  protected boolean allowsUnusedParameters();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.jdbc.object.RdbmsOperation this
         0: .line 477
            iconst_0
            ireturn
        end local 0 // org.springframework.jdbc.object.RdbmsOperation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/jdbc/object/RdbmsOperation;
}
SourceFile: "RdbmsOperation.java"