public class org.springframework.orm.hibernate5.HibernateTemplate implements org.springframework.orm.hibernate5.HibernateOperations, org.springframework.beans.factory.InitializingBean
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.springframework.orm.hibernate5.HibernateTemplate
  super_class: java.lang.Object
{
  private static final java.lang.reflect.Method createQueryMethod;
    descriptor: Ljava/lang/reflect/Method;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.reflect.Method getNamedQueryMethod;
    descriptor: Ljava/lang/reflect/Method;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  protected final org.apache.commons.logging.Log logger;
    descriptor: Lorg/apache/commons/logging/Log;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  private org.hibernate.SessionFactory sessionFactory;
    descriptor: Lorg/hibernate/SessionFactory;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

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

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

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

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

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

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=1, args_size=0
         0: .line 100
            ldc Lorg/hibernate/Session;
            ldc "createQuery"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/String;
            aastore
            invokevirtual java.lang.Class.getMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            putstatic org.springframework.orm.hibernate5.HibernateTemplate.createQueryMethod:Ljava/lang/reflect/Method;
         1: .line 101
            ldc Lorg/hibernate/Session;
            ldc "getNamedQuery"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/String;
            aastore
            invokevirtual java.lang.Class.getMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            putstatic org.springframework.orm.hibernate5.HibernateTemplate.getNamedQueryMethod:Ljava/lang/reflect/Method;
         2: .line 102
            goto 5
         3: .line 103
      StackMap locals:
      StackMap stack: java.lang.NoSuchMethodException
            astore 0 /* ex */
        start local 0 // java.lang.NoSuchMethodException ex
         4: .line 104
            new java.lang.IllegalStateException
            dup
            ldc "Incompatible Hibernate Session API"
            aload 0 /* ex */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 0 // java.lang.NoSuchMethodException ex
         5: .line 106
      StackMap locals:
      StackMap stack:
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            4    5     0    ex  Ljava/lang/NoSuchMethodException;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.NoSuchMethodException

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
         0: .line 134
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 109
            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.orm.hibernate5.HibernateTemplate.logger:Lorg/apache/commons/logging/Log;
         2: .line 117
            aload 0 /* this */
            iconst_0
            putfield org.springframework.orm.hibernate5.HibernateTemplate.exposeNativeSession:Z
         3: .line 119
            aload 0 /* this */
            iconst_1
            putfield org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperations:Z
         4: .line 121
            aload 0 /* this */
            iconst_0
            putfield org.springframework.orm.hibernate5.HibernateTemplate.cacheQueries:Z
         5: .line 126
            aload 0 /* this */
            iconst_0
            putfield org.springframework.orm.hibernate5.HibernateTemplate.fetchSize:I
         6: .line 128
            aload 0 /* this */
            iconst_0
            putfield org.springframework.orm.hibernate5.HibernateTemplate.maxResults:I
         7: .line 135
            return
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/springframework/orm/hibernate5/HibernateTemplate;

  public void <init>(org.hibernate.SessionFactory);
    descriptor: (Lorg/hibernate/SessionFactory;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // org.hibernate.SessionFactory sessionFactory
         0: .line 141
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 109
            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.orm.hibernate5.HibernateTemplate.logger:Lorg/apache/commons/logging/Log;
         2: .line 117
            aload 0 /* this */
            iconst_0
            putfield org.springframework.orm.hibernate5.HibernateTemplate.exposeNativeSession:Z
         3: .line 119
            aload 0 /* this */
            iconst_1
            putfield org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperations:Z
         4: .line 121
            aload 0 /* this */
            iconst_0
            putfield org.springframework.orm.hibernate5.HibernateTemplate.cacheQueries:Z
         5: .line 126
            aload 0 /* this */
            iconst_0
            putfield org.springframework.orm.hibernate5.HibernateTemplate.fetchSize:I
         6: .line 128
            aload 0 /* this */
            iconst_0
            putfield org.springframework.orm.hibernate5.HibernateTemplate.maxResults:I
         7: .line 142
            aload 0 /* this */
            aload 1 /* sessionFactory */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.setSessionFactory:(Lorg/hibernate/SessionFactory;)V
         8: .line 143
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.afterPropertiesSet:()V
         9: .line 144
            return
        end local 1 // org.hibernate.SessionFactory sessionFactory
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   10     0            this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0   10     1  sessionFactory  Lorg/hibernate/SessionFactory;
    MethodParameters:
                Name  Flags
      sessionFactory  

  public void setSessionFactory(org.hibernate.SessionFactory);
    descriptor: (Lorg/hibernate/SessionFactory;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // org.hibernate.SessionFactory sessionFactory
         0: .line 152
            aload 0 /* this */
            aload 1 /* sessionFactory */
            putfield org.springframework.orm.hibernate5.HibernateTemplate.sessionFactory:Lorg/hibernate/SessionFactory;
         1: .line 153
            return
        end local 1 // org.hibernate.SessionFactory sessionFactory
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  sessionFactory  Lorg/hibernate/SessionFactory;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
                Name  Flags
      sessionFactory  

  public org.hibernate.SessionFactory getSessionFactory();
    descriptor: ()Lorg/hibernate/SessionFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
         0: .line 161
            aload 0 /* this */
            getfield org.springframework.orm.hibernate5.HibernateTemplate.sessionFactory:Lorg/hibernate/SessionFactory;
            areturn
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  protected final org.hibernate.SessionFactory obtainSessionFactory();
    descriptor: ()Lorg/hibernate/SessionFactory;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
         0: .line 171
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.getSessionFactory:()Lorg/hibernate/SessionFactory;
            astore 1 /* sessionFactory */
        start local 1 // org.hibernate.SessionFactory sessionFactory
         1: .line 172
            aload 1 /* sessionFactory */
            ifnull 2
            iconst_1
            goto 3
      StackMap locals: org.hibernate.SessionFactory
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: ldc "No SessionFactory set"
            invokestatic org.springframework.util.Assert.state:(ZLjava/lang/String;)V
         4: .line 173
            aload 1 /* sessionFactory */
            areturn
        end local 1 // org.hibernate.SessionFactory sessionFactory
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            1    5     1  sessionFactory  Lorg/hibernate/SessionFactory;

  public void setFilterNames(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String[] filterNames
         0: .line 187
            aload 0 /* this */
            aload 1 /* filterNames */
            putfield org.springframework.orm.hibernate5.HibernateTemplate.filterNames:[Ljava/lang/String;
         1: .line 188
            return
        end local 1 // java.lang.String[] filterNames
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  filterNames  [Ljava/lang/String;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
             Name  Flags
      filterNames  

  public java.lang.String[] getFilterNames();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
         0: .line 195
            aload 0 /* this */
            getfield org.springframework.orm.hibernate5.HibernateTemplate.filterNames:[Ljava/lang/String;
            areturn
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  public void setExposeNativeSession(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // boolean exposeNativeSession
         0: .line 212
            aload 0 /* this */
            iload 1 /* exposeNativeSession */
            putfield org.springframework.orm.hibernate5.HibernateTemplate.exposeNativeSession:Z
         1: .line 213
            return
        end local 1 // boolean exposeNativeSession
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    2     0                 this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  exposeNativeSession  Z
    MethodParameters:
                     Name  Flags
      exposeNativeSession  

  public boolean isExposeNativeSession();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
         0: .line 220
            aload 0 /* this */
            getfield org.springframework.orm.hibernate5.HibernateTemplate.exposeNativeSession:Z
            ireturn
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/orm/hibernate5/HibernateTemplate;

  public void setCheckWriteOperations(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // boolean checkWriteOperations
         0: .line 233
            aload 0 /* this */
            iload 1 /* checkWriteOperations */
            putfield org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperations:Z
         1: .line 234
            return
        end local 1 // boolean checkWriteOperations
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    2     0                  this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  checkWriteOperations  Z
    MethodParameters:
                      Name  Flags
      checkWriteOperations  

  public boolean isCheckWriteOperations();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
         0: .line 241
            aload 0 /* this */
            getfield org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperations:Z
            ireturn
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/orm/hibernate5/HibernateTemplate;

  public void setCacheQueries(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // boolean cacheQueries
         0: .line 256
            aload 0 /* this */
            iload 1 /* cacheQueries */
            putfield org.springframework.orm.hibernate5.HibernateTemplate.cacheQueries:Z
         1: .line 257
            return
        end local 1 // boolean cacheQueries
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  cacheQueries  Z
    MethodParameters:
              Name  Flags
      cacheQueries  

  public boolean isCacheQueries();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
         0: .line 263
            aload 0 /* this */
            getfield org.springframework.orm.hibernate5.HibernateTemplate.cacheQueries:Z
            ireturn
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/orm/hibernate5/HibernateTemplate;

  public void setQueryCacheRegion(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.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String queryCacheRegion
         0: .line 277
            aload 0 /* this */
            aload 1 /* queryCacheRegion */
            putfield org.springframework.orm.hibernate5.HibernateTemplate.queryCacheRegion:Ljava/lang/String;
         1: .line 278
            return
        end local 1 // java.lang.String queryCacheRegion
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  queryCacheRegion  Ljava/lang/String;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
                  Name  Flags
      queryCacheRegion  

  public java.lang.String getQueryCacheRegion();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
         0: .line 285
            aload 0 /* this */
            getfield org.springframework.orm.hibernate5.HibernateTemplate.queryCacheRegion:Ljava/lang/String;
            areturn
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  public void setFetchSize(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // int fetchSize
         0: .line 296
            aload 0 /* this */
            iload 1 /* fetchSize */
            putfield org.springframework.orm.hibernate5.HibernateTemplate.fetchSize:I
         1: .line 297
            return
        end local 1 // int fetchSize
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  fetchSize  I
    MethodParameters:
           Name  Flags
      fetchSize  

  public int getFetchSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
         0: .line 303
            aload 0 /* this */
            getfield org.springframework.orm.hibernate5.HibernateTemplate.fetchSize:I
            ireturn
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/orm/hibernate5/HibernateTemplate;

  public void setMaxResults(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // int maxResults
         0: .line 315
            aload 0 /* this */
            iload 1 /* maxResults */
            putfield org.springframework.orm.hibernate5.HibernateTemplate.maxResults:I
         1: .line 316
            return
        end local 1 // int maxResults
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  maxResults  I
    MethodParameters:
            Name  Flags
      maxResults  

  public int getMaxResults();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
         0: .line 322
            aload 0 /* this */
            getfield org.springframework.orm.hibernate5.HibernateTemplate.maxResults:I
            ireturn
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/orm/hibernate5/HibernateTemplate;

  public void afterPropertiesSet();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
         0: .line 327
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.getSessionFactory:()Lorg/hibernate/SessionFactory;
            ifnonnull 2
         1: .line 328
            new java.lang.IllegalArgumentException
            dup
            ldc "Property 'sessionFactory' is required"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 330
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/springframework/orm/hibernate5/HibernateTemplate;

  public <T> T execute(org.springframework.orm.hibernate5.HibernateCallback<T>);
    descriptor: (Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // org.springframework.orm.hibernate5.HibernateCallback action
         0: .line 336
            aload 0 /* this */
            aload 1 /* action */
            iconst_0
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.doExecute:(Lorg/springframework/orm/hibernate5/HibernateCallback;Z)Ljava/lang/Object;
            areturn
        end local 1 // org.springframework.orm.hibernate5.HibernateCallback action
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  action  Lorg/springframework/orm/hibernate5/HibernateCallback<TT;>;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: <T:Ljava/lang/Object;>(Lorg/springframework/orm/hibernate5/HibernateCallback<TT;>;)TT;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()
    MethodParameters:
        Name  Flags
      action  

  public <T> T executeWithNativeSession(org.springframework.orm.hibernate5.HibernateCallback<T>);
    descriptor: (Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // org.springframework.orm.hibernate5.HibernateCallback action
         0: .line 350
            aload 0 /* this */
            aload 1 /* action */
            iconst_1
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.doExecute:(Lorg/springframework/orm/hibernate5/HibernateCallback;Z)Ljava/lang/Object;
            areturn
        end local 1 // org.springframework.orm.hibernate5.HibernateCallback action
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  action  Lorg/springframework/orm/hibernate5/HibernateCallback<TT;>;
    Signature: <T:Ljava/lang/Object;>(Lorg/springframework/orm/hibernate5/HibernateCallback<TT;>;)TT;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()
    MethodParameters:
        Name  Flags
      action  

  protected <T> T doExecute(org.springframework.orm.hibernate5.HibernateCallback<T>, );
    descriptor: (Lorg/springframework/orm/hibernate5/HibernateCallback;Z)Ljava/lang/Object;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=8, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // org.springframework.orm.hibernate5.HibernateCallback action
        start local 2 // boolean enforceNativeSession
         0: .line 364
            aload 1 /* action */
            ldc "Callback object must not be null"
            invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
         1: .line 366
            aconst_null
            astore 3 /* session */
        start local 3 // org.hibernate.Session session
         2: .line 367
            iconst_0
            istore 4 /* isNew */
        start local 4 // boolean isNew
         3: .line 369
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.obtainSessionFactory:()Lorg/hibernate/SessionFactory;
            invokeinterface org.hibernate.SessionFactory.getCurrentSession:()Lorg/hibernate/Session;
            astore 3 /* session */
         4: .line 370
            goto 7
         5: .line 371
      StackMap locals: org.springframework.orm.hibernate5.HibernateTemplate org.springframework.orm.hibernate5.HibernateCallback int org.hibernate.Session int
      StackMap stack: org.hibernate.HibernateException
            astore 5 /* ex */
        start local 5 // org.hibernate.HibernateException ex
         6: .line 372
            aload 0 /* this */
            getfield org.springframework.orm.hibernate5.HibernateTemplate.logger:Lorg/apache/commons/logging/Log;
            ldc "Could not retrieve pre-bound Hibernate session"
            aload 5 /* ex */
            invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 5 // org.hibernate.HibernateException ex
         7: .line 374
      StackMap locals:
      StackMap stack:
            aload 3 /* session */
            ifnonnull 11
         8: .line 375
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.obtainSessionFactory:()Lorg/hibernate/SessionFactory;
            invokeinterface org.hibernate.SessionFactory.openSession:()Lorg/hibernate/Session;
            astore 3 /* session */
         9: .line 376
            aload 3 /* session */
            getstatic org.hibernate.FlushMode.MANUAL:Lorg/hibernate/FlushMode;
            invokeinterface org.hibernate.Session.setFlushMode:(Lorg/hibernate/FlushMode;)V
        10: .line 377
            iconst_1
            istore 4 /* isNew */
        11: .line 381
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.enableFilters:(Lorg/hibernate/Session;)V
        12: .line 383
            iload 2 /* enforceNativeSession */
            ifne 13
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.isExposeNativeSession:()Z
            ifeq 14
      StackMap locals:
      StackMap stack:
        13: aload 3 /* session */
            goto 15
      StackMap locals:
      StackMap stack:
        14: aload 0 /* this */
            aload 3 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.createSessionProxy:(Lorg/hibernate/Session;)Lorg/hibernate/Session;
        15: .line 382
      StackMap locals:
      StackMap stack: org.hibernate.Session
            astore 5 /* sessionToExpose */
        start local 5 // org.hibernate.Session sessionToExpose
        16: .line 384
            aload 1 /* action */
            aload 5 /* sessionToExpose */
            invokeinterface org.springframework.orm.hibernate5.HibernateCallback.doInHibernate:(Lorg/hibernate/Session;)Ljava/lang/Object;
            astore 7
        17: .line 400
            iload 4 /* isNew */
            ifeq 20
        18: .line 401
            aload 3 /* session */
            invokestatic org.springframework.orm.hibernate5.SessionFactoryUtils.closeSession:(Lorg/hibernate/Session;)V
        19: .line 402
            goto 21
        20: .line 404
      StackMap locals: org.springframework.orm.hibernate5.HibernateTemplate org.springframework.orm.hibernate5.HibernateCallback int org.hibernate.Session int org.hibernate.Session top java.lang.Object
      StackMap stack:
            aload 0 /* this */
            aload 3 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.disableFilters:(Lorg/hibernate/Session;)V
        21: .line 384
      StackMap locals:
      StackMap stack:
            aload 7
            areturn
        end local 5 // org.hibernate.Session sessionToExpose
        22: .line 386
      StackMap locals: org.springframework.orm.hibernate5.HibernateTemplate org.springframework.orm.hibernate5.HibernateCallback int org.hibernate.Session int
      StackMap stack: org.hibernate.HibernateException
            astore 5 /* ex */
        start local 5 // org.hibernate.HibernateException ex
        23: .line 387
            aload 5 /* ex */
            invokestatic org.springframework.orm.hibernate5.SessionFactoryUtils.convertHibernateAccessException:(Lorg/hibernate/HibernateException;)Lorg/springframework/dao/DataAccessException;
            athrow
        end local 5 // org.hibernate.HibernateException ex
        24: .line 389
      StackMap locals:
      StackMap stack: javax.persistence.PersistenceException
            astore 5 /* ex */
        start local 5 // javax.persistence.PersistenceException ex
        25: .line 390
            aload 5 /* ex */
            invokevirtual javax.persistence.PersistenceException.getCause:()Ljava/lang/Throwable;
            instanceof org.hibernate.HibernateException
            ifeq 27
        26: .line 391
            aload 5 /* ex */
            invokevirtual javax.persistence.PersistenceException.getCause:()Ljava/lang/Throwable;
            checkcast org.hibernate.HibernateException
            invokestatic org.springframework.orm.hibernate5.SessionFactoryUtils.convertHibernateAccessException:(Lorg/hibernate/HibernateException;)Lorg/springframework/dao/DataAccessException;
            athrow
        27: .line 393
      StackMap locals: javax.persistence.PersistenceException
      StackMap stack:
            aload 5 /* ex */
            athrow
        end local 5 // javax.persistence.PersistenceException ex
        28: .line 395
      StackMap locals: org.springframework.orm.hibernate5.HibernateTemplate org.springframework.orm.hibernate5.HibernateCallback int org.hibernate.Session int
      StackMap stack: java.lang.RuntimeException
            astore 5 /* ex */
        start local 5 // java.lang.RuntimeException ex
        29: .line 397
            aload 5 /* ex */
            athrow
        end local 5 // java.lang.RuntimeException ex
        30: .line 399
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 6
        31: .line 400
            iload 4 /* isNew */
            ifeq 34
        32: .line 401
            aload 3 /* session */
            invokestatic org.springframework.orm.hibernate5.SessionFactoryUtils.closeSession:(Lorg/hibernate/Session;)V
        33: .line 402
            goto 35
        34: .line 404
      StackMap locals: org.springframework.orm.hibernate5.HibernateTemplate org.springframework.orm.hibernate5.HibernateCallback int org.hibernate.Session int top java.lang.Throwable
      StackMap stack:
            aload 0 /* this */
            aload 3 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.disableFilters:(Lorg/hibernate/Session;)V
        35: .line 406
      StackMap locals:
      StackMap stack:
            aload 6
            athrow
        end local 4 // boolean isNew
        end local 3 // org.hibernate.Session session
        end local 2 // boolean enforceNativeSession
        end local 1 // org.springframework.orm.hibernate5.HibernateCallback action
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   36     0                  this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0   36     1                action  Lorg/springframework/orm/hibernate5/HibernateCallback<TT;>;
            0   36     2  enforceNativeSession  Z
            2   36     3               session  Lorg/hibernate/Session;
            3   36     4                 isNew  Z
            6    7     5                    ex  Lorg/hibernate/HibernateException;
           16   22     5       sessionToExpose  Lorg/hibernate/Session;
           23   24     5                    ex  Lorg/hibernate/HibernateException;
           25   28     5                    ex  Ljavax/persistence/PersistenceException;
           29   30     5                    ex  Ljava/lang/RuntimeException;
      Exception table:
        from    to  target  type
           3     4       5  Class org.hibernate.HibernateException
          11    17      22  Class org.hibernate.HibernateException
          11    17      24  Class javax.persistence.PersistenceException
          11    17      28  Class java.lang.RuntimeException
          11    17      30  any
          22    30      30  any
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: <T:Ljava/lang/Object;>(Lorg/springframework/orm/hibernate5/HibernateCallback<TT;>;Z)TT;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()
    MethodParameters:
                      Name  Flags
      action                
      enforceNativeSession  

  protected org.hibernate.Session createSessionProxy(org.hibernate.Session);
    descriptor: (Lorg/hibernate/Session;)Lorg/hibernate/Session;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // org.hibernate.Session session
         0: .line 420
            aload 1 /* session */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lorg/hibernate/Session;
            aastore
         1: .line 421
            new org.springframework.orm.hibernate5.HibernateTemplate$CloseSuppressingInvocationHandler
            dup
            aload 0 /* this */
            aload 1 /* session */
            invokespecial org.springframework.orm.hibernate5.HibernateTemplate$CloseSuppressingInvocationHandler.<init>:(Lorg/springframework/orm/hibernate5/HibernateTemplate;Lorg/hibernate/Session;)V
         2: .line 419
            invokestatic java.lang.reflect.Proxy.newProxyInstance:(Ljava/lang/ClassLoader;[Ljava/lang/Class;Ljava/lang/reflect/InvocationHandler;)Ljava/lang/Object;
            checkcast org.hibernate.Session
            areturn
        end local 1 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    3     1  session  Lorg/hibernate/Session;
    MethodParameters:
         Name  Flags
      session  

  protected void enableFilters(org.hibernate.Session);
    descriptor: (Lorg/hibernate/Session;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // org.hibernate.Session session
         0: .line 431
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.getFilterNames:()[Ljava/lang/String;
            astore 2 /* filterNames */
        start local 2 // java.lang.String[] filterNames
         1: .line 432
            aload 2 /* filterNames */
            ifnull 7
         2: .line 433
            aload 2 /* filterNames */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 6
      StackMap locals: org.springframework.orm.hibernate5.HibernateTemplate org.hibernate.Session java.lang.String[] top int int java.lang.String[]
      StackMap stack:
         3: aload 6
            iload 4
            aaload
            astore 3 /* filterName */
        start local 3 // java.lang.String filterName
         4: .line 434
            aload 1 /* session */
            aload 3 /* filterName */
            invokeinterface org.hibernate.Session.enableFilter:(Ljava/lang/String;)Lorg/hibernate/Filter;
            pop
        end local 3 // java.lang.String filterName
         5: .line 433
            iinc 4 1
      StackMap locals:
      StackMap stack:
         6: iload 4
            iload 5
            if_icmplt 3
         7: .line 437
      StackMap locals: org.springframework.orm.hibernate5.HibernateTemplate org.hibernate.Session java.lang.String[]
      StackMap stack:
            return
        end local 2 // java.lang.String[] filterNames
        end local 1 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    8     1      session  Lorg/hibernate/Session;
            1    8     2  filterNames  [Ljava/lang/String;
            4    5     3   filterName  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      session  

  protected void disableFilters(org.hibernate.Session);
    descriptor: (Lorg/hibernate/Session;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // org.hibernate.Session session
         0: .line 446
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.getFilterNames:()[Ljava/lang/String;
            astore 2 /* filterNames */
        start local 2 // java.lang.String[] filterNames
         1: .line 447
            aload 2 /* filterNames */
            ifnull 7
         2: .line 448
            aload 2 /* filterNames */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 6
      StackMap locals: org.springframework.orm.hibernate5.HibernateTemplate org.hibernate.Session java.lang.String[] top int int java.lang.String[]
      StackMap stack:
         3: aload 6
            iload 4
            aaload
            astore 3 /* filterName */
        start local 3 // java.lang.String filterName
         4: .line 449
            aload 1 /* session */
            aload 3 /* filterName */
            invokeinterface org.hibernate.Session.disableFilter:(Ljava/lang/String;)V
        end local 3 // java.lang.String filterName
         5: .line 448
            iinc 4 1
      StackMap locals:
      StackMap stack:
         6: iload 4
            iload 5
            if_icmplt 3
         7: .line 452
      StackMap locals: org.springframework.orm.hibernate5.HibernateTemplate org.hibernate.Session java.lang.String[]
      StackMap stack:
            return
        end local 2 // java.lang.String[] filterNames
        end local 1 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    8     1      session  Lorg/hibernate/Session;
            1    8     2  filterNames  [Ljava/lang/String;
            4    5     3   filterName  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      session  

  public <T> T get(java.lang.Class<T>, java.io.Serializable);
    descriptor: (Ljava/lang/Class;Ljava/io/Serializable;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Class entityClass
        start local 2 // java.io.Serializable id
         0: .line 462
            aload 0 /* this */
            aload 1 /* entityClass */
            aload 2 /* id */
            aconst_null
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.get:(Ljava/lang/Class;Ljava/io/Serializable;Lorg/hibernate/LockMode;)Ljava/lang/Object;
            areturn
        end local 2 // java.io.Serializable id
        end local 1 // java.lang.Class entityClass
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  entityClass  Ljava/lang/Class<TT;>;
            0    1     2           id  Ljava/io/Serializable;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;Ljava/io/Serializable;)TT;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()
    MethodParameters:
             Name  Flags
      entityClass  
      id           

  public <T> T get(java.lang.Class<T>, java.io.Serializable, org.hibernate.LockMode);
    descriptor: (Ljava/lang/Class;Ljava/io/Serializable;Lorg/hibernate/LockMode;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Class entityClass
        start local 2 // java.io.Serializable id
        start local 3 // org.hibernate.LockMode lockMode
         0: .line 470
            aload 0 /* this */
            aload 3 /* lockMode */
            aload 1 /* entityClass */
            aload 2 /* id */
            invokedynamic doInHibernate(Lorg/hibernate/LockMode;Ljava/lang/Class;Ljava/io/Serializable;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$0(Lorg/hibernate/LockMode;Ljava/lang/Class;Ljava/io/Serializable;Lorg/hibernate/Session;)Ljava/lang/Object; (6)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            areturn
        end local 3 // org.hibernate.LockMode lockMode
        end local 2 // java.io.Serializable id
        end local 1 // java.lang.Class entityClass
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  entityClass  Ljava/lang/Class<TT;>;
            0    1     2           id  Ljava/io/Serializable;
            0    1     3     lockMode  Lorg/hibernate/LockMode;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;Ljava/io/Serializable;Lorg/hibernate/LockMode;)TT;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
        org.springframework.lang.Nullable()
    MethodParameters:
             Name  Flags
      entityClass  final
      id           final
      lockMode     final

  public java.lang.Object get(java.lang.String, java.io.Serializable);
    descriptor: (Ljava/lang/String;Ljava/io/Serializable;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String entityName
        start local 2 // java.io.Serializable id
         0: .line 483
            aload 0 /* this */
            aload 1 /* entityName */
            aload 2 /* id */
            aconst_null
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.get:(Ljava/lang/String;Ljava/io/Serializable;Lorg/hibernate/LockMode;)Ljava/lang/Object;
            areturn
        end local 2 // java.io.Serializable id
        end local 1 // java.lang.String entityName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  entityName  Ljava/lang/String;
            0    1     2          id  Ljava/io/Serializable;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()
    MethodParameters:
            Name  Flags
      entityName  
      id          

  public java.lang.Object get(java.lang.String, java.io.Serializable, org.hibernate.LockMode);
    descriptor: (Ljava/lang/String;Ljava/io/Serializable;Lorg/hibernate/LockMode;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String entityName
        start local 2 // java.io.Serializable id
        start local 3 // org.hibernate.LockMode lockMode
         0: .line 491
            aload 0 /* this */
            aload 3 /* lockMode */
            aload 1 /* entityName */
            aload 2 /* id */
            invokedynamic doInHibernate(Lorg/hibernate/LockMode;Ljava/lang/String;Ljava/io/Serializable;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$1(Lorg/hibernate/LockMode;Ljava/lang/String;Ljava/io/Serializable;Lorg/hibernate/Session;)Ljava/lang/Object; (6)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            areturn
        end local 3 // org.hibernate.LockMode lockMode
        end local 2 // java.io.Serializable id
        end local 1 // java.lang.String entityName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  entityName  Ljava/lang/String;
            0    1     2          id  Ljava/io/Serializable;
            0    1     3    lockMode  Lorg/hibernate/LockMode;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
        org.springframework.lang.Nullable()
    MethodParameters:
            Name  Flags
      entityName  final
      id          final
      lockMode    final

  public <T> T load(java.lang.Class<T>, java.io.Serializable);
    descriptor: (Ljava/lang/Class;Ljava/io/Serializable;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Class entityClass
        start local 2 // java.io.Serializable id
         0: .line 503
            aload 0 /* this */
            aload 1 /* entityClass */
            aload 2 /* id */
            aconst_null
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.load:(Ljava/lang/Class;Ljava/io/Serializable;Lorg/hibernate/LockMode;)Ljava/lang/Object;
            areturn
        end local 2 // java.io.Serializable id
        end local 1 // java.lang.Class entityClass
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  entityClass  Ljava/lang/Class<TT;>;
            0    1     2           id  Ljava/io/Serializable;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;Ljava/io/Serializable;)TT;
    MethodParameters:
             Name  Flags
      entityClass  
      id           

  public <T> T load(java.lang.Class<T>, java.io.Serializable, org.hibernate.LockMode);
    descriptor: (Ljava/lang/Class;Ljava/io/Serializable;Lorg/hibernate/LockMode;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Class entityClass
        start local 2 // java.io.Serializable id
        start local 3 // org.hibernate.LockMode lockMode
         0: .line 510
            aload 0 /* this */
            aload 3 /* lockMode */
            aload 1 /* entityClass */
            aload 2 /* id */
            invokedynamic doInHibernate(Lorg/hibernate/LockMode;Ljava/lang/Class;Ljava/io/Serializable;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$2(Lorg/hibernate/LockMode;Ljava/lang/Class;Ljava/io/Serializable;Lorg/hibernate/Session;)Ljava/lang/Object; (6)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.nonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 3 // org.hibernate.LockMode lockMode
        end local 2 // java.io.Serializable id
        end local 1 // java.lang.Class entityClass
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  entityClass  Ljava/lang/Class<TT;>;
            0    1     2           id  Ljava/io/Serializable;
            0    1     3     lockMode  Lorg/hibernate/LockMode;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;Ljava/io/Serializable;Lorg/hibernate/LockMode;)TT;
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
        org.springframework.lang.Nullable()
    MethodParameters:
             Name  Flags
      entityClass  final
      id           final
      lockMode     final

  public java.lang.Object load(java.lang.String, java.io.Serializable);
    descriptor: (Ljava/lang/String;Ljava/io/Serializable;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String entityName
        start local 2 // java.io.Serializable id
         0: .line 522
            aload 0 /* this */
            aload 1 /* entityName */
            aload 2 /* id */
            aconst_null
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.load:(Ljava/lang/String;Ljava/io/Serializable;Lorg/hibernate/LockMode;)Ljava/lang/Object;
            areturn
        end local 2 // java.io.Serializable id
        end local 1 // java.lang.String entityName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  entityName  Ljava/lang/String;
            0    1     2          id  Ljava/io/Serializable;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
            Name  Flags
      entityName  
      id          

  public java.lang.Object load(java.lang.String, java.io.Serializable, org.hibernate.LockMode);
    descriptor: (Ljava/lang/String;Ljava/io/Serializable;Lorg/hibernate/LockMode;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String entityName
        start local 2 // java.io.Serializable id
        start local 3 // org.hibernate.LockMode lockMode
         0: .line 529
            aload 0 /* this */
            aload 3 /* lockMode */
            aload 1 /* entityName */
            aload 2 /* id */
            invokedynamic doInHibernate(Lorg/hibernate/LockMode;Ljava/lang/String;Ljava/io/Serializable;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$3(Lorg/hibernate/LockMode;Ljava/lang/String;Ljava/io/Serializable;Lorg/hibernate/Session;)Ljava/lang/Object; (6)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.nonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 3 // org.hibernate.LockMode lockMode
        end local 2 // java.io.Serializable id
        end local 1 // java.lang.String entityName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  entityName  Ljava/lang/String;
            0    1     2          id  Ljava/io/Serializable;
            0    1     3    lockMode  Lorg/hibernate/LockMode;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
        org.springframework.lang.Nullable()
    MethodParameters:
            Name  Flags
      entityName  final
      id          final
      lockMode    final

  public <T> java.util.List<T> loadAll(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Class entityClass
         0: .line 542
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* entityClass */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/Class;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$4(Ljava/lang/Class;Lorg/hibernate/Session;)Ljava/util/List; (7)
                  (Lorg/hibernate/Session;)Ljava/util/List;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            checkcast java.util.List
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.nonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            areturn
        end local 1 // java.lang.Class entityClass
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  entityClass  Ljava/lang/Class<TT;>;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Ljava/util/List<TT;>;
    MethodParameters:
             Name  Flags
      entityClass  final

  public void load(java.lang.Object, java.io.Serializable);
    descriptor: (Ljava/lang/Object;Ljava/io/Serializable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object entity
        start local 2 // java.io.Serializable id
         0: .line 553
            aload 0 /* this */
            aload 1 /* entity */
            aload 2 /* id */
            invokedynamic doInHibernate(Ljava/lang/Object;Ljava/io/Serializable;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$5(Ljava/lang/Object;Ljava/io/Serializable;Lorg/hibernate/Session;)Ljava/lang/Object; (6)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 557
            return
        end local 2 // java.io.Serializable id
        end local 1 // java.lang.Object entity
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  entity  Ljava/lang/Object;
            0    2     2      id  Ljava/io/Serializable;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
        Name  Flags
      entity  final
      id      final

  public void refresh(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object entity
         0: .line 561
            aload 0 /* this */
            aload 1 /* entity */
            aconst_null
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.refresh:(Ljava/lang/Object;Lorg/hibernate/LockMode;)V
         1: .line 562
            return
        end local 1 // java.lang.Object entity
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  entity  Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
        Name  Flags
      entity  final

  public void refresh(java.lang.Object, org.hibernate.LockMode);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/LockMode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object entity
        start local 2 // org.hibernate.LockMode lockMode
         0: .line 566
            aload 0 /* this */
            aload 2 /* lockMode */
            aload 1 /* entity */
            invokedynamic doInHibernate(Lorg/hibernate/LockMode;Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$6(Lorg/hibernate/LockMode;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object; (6)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 575
            return
        end local 2 // org.hibernate.LockMode lockMode
        end local 1 // java.lang.Object entity
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1    entity  Ljava/lang/Object;
            0    2     2  lockMode  Lorg/hibernate/LockMode;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
        org.springframework.lang.Nullable()
    MethodParameters:
          Name  Flags
      entity    final
      lockMode  final

  public boolean contains(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object entity
         0: .line 579
            aload 0 /* this */
            aload 1 /* entity */
            invokedynamic doInHibernate(Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$7(Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Boolean; (6)
                  (Lorg/hibernate/Session;)Ljava/lang/Boolean;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            astore 2 /* result */
        start local 2 // java.lang.Boolean result
         1: .line 580
            aload 2 /* result */
            ifnull 2
            iconst_1
            goto 3
      StackMap locals: java.lang.Boolean
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: ldc "No contains result"
            invokestatic org.springframework.util.Assert.state:(ZLjava/lang/String;)V
         4: .line 581
            aload 2 /* result */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 2 // java.lang.Boolean result
        end local 1 // java.lang.Object entity
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    5     1  entity  Ljava/lang/Object;
            1    5     2  result  Ljava/lang/Boolean;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
        Name  Flags
      entity  final

  public void evict(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object entity
         0: .line 586
            aload 0 /* this */
            aload 1 /* entity */
            invokedynamic doInHibernate(Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$8(Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object; (6)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 590
            return
        end local 1 // java.lang.Object entity
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  entity  Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
        Name  Flags
      entity  final

  public void initialize(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object proxy
         0: .line 595
            aload 1 /* proxy */
            invokestatic org.hibernate.Hibernate.initialize:(Ljava/lang/Object;)V
         1: .line 596
            goto 4
         2: .line 597
      StackMap locals:
      StackMap stack: org.hibernate.HibernateException
            astore 2 /* ex */
        start local 2 // org.hibernate.HibernateException ex
         3: .line 598
            aload 2 /* ex */
            invokestatic org.springframework.orm.hibernate5.SessionFactoryUtils.convertHibernateAccessException:(Lorg/hibernate/HibernateException;)Lorg/springframework/dao/DataAccessException;
            athrow
        end local 2 // org.hibernate.HibernateException ex
         4: .line 600
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object proxy
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    5     1  proxy  Ljava/lang/Object;
            3    4     2     ex  Lorg/hibernate/HibernateException;
      Exception table:
        from    to  target  type
           0     1       2  Class org.hibernate.HibernateException
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
       Name  Flags
      proxy  

  public org.hibernate.Filter enableFilter(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/hibernate/Filter;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String filterName
         0: .line 604
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.obtainSessionFactory:()Lorg/hibernate/SessionFactory;
            invokeinterface org.hibernate.SessionFactory.getCurrentSession:()Lorg/hibernate/Session;
            astore 2 /* session */
        start local 2 // org.hibernate.Session session
         1: .line 605
            aload 2 /* session */
            aload 1 /* filterName */
            invokeinterface org.hibernate.Session.getEnabledFilter:(Ljava/lang/String;)Lorg/hibernate/Filter;
            astore 3 /* filter */
        start local 3 // org.hibernate.Filter filter
         2: .line 606
            aload 3 /* filter */
            ifnonnull 4
         3: .line 607
            aload 2 /* session */
            aload 1 /* filterName */
            invokeinterface org.hibernate.Session.enableFilter:(Ljava/lang/String;)Lorg/hibernate/Filter;
            astore 3 /* filter */
         4: .line 609
      StackMap locals: org.hibernate.Session org.hibernate.Filter
      StackMap stack:
            aload 3 /* filter */
            areturn
        end local 3 // org.hibernate.Filter filter
        end local 2 // org.hibernate.Session session
        end local 1 // java.lang.String filterName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    5     1  filterName  Ljava/lang/String;
            1    5     2     session  Lorg/hibernate/Session;
            2    5     3      filter  Lorg/hibernate/Filter;
    Exceptions:
      throws java.lang.IllegalStateException
    MethodParameters:
            Name  Flags
      filterName  

  public void lock(java.lang.Object, org.hibernate.LockMode);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/LockMode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object entity
        start local 2 // org.hibernate.LockMode lockMode
         0: .line 619
            aload 0 /* this */
            aload 2 /* lockMode */
            aload 1 /* entity */
            invokedynamic doInHibernate(Lorg/hibernate/LockMode;Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$9(Lorg/hibernate/LockMode;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object; (6)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 623
            return
        end local 2 // org.hibernate.LockMode lockMode
        end local 1 // java.lang.Object entity
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1    entity  Ljava/lang/Object;
            0    2     2  lockMode  Lorg/hibernate/LockMode;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
          Name  Flags
      entity    final
      lockMode  final

  public void lock(java.lang.String, java.lang.Object, org.hibernate.LockMode);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/LockMode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String entityName
        start local 2 // java.lang.Object entity
        start local 3 // org.hibernate.LockMode lockMode
         0: .line 629
            aload 0 /* this */
            aload 3 /* lockMode */
            aload 1 /* entityName */
            aload 2 /* entity */
            invokedynamic doInHibernate(Lorg/hibernate/LockMode;Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$10(Lorg/hibernate/LockMode;Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object; (6)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 633
            return
        end local 3 // org.hibernate.LockMode lockMode
        end local 2 // java.lang.Object entity
        end local 1 // java.lang.String entityName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  entityName  Ljava/lang/String;
            0    2     2      entity  Ljava/lang/Object;
            0    2     3    lockMode  Lorg/hibernate/LockMode;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
            Name  Flags
      entityName  final
      entity      final
      lockMode    final

  public java.io.Serializable save(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/io/Serializable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object entity
         0: .line 637
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* entity */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$11(Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/io/Serializable; (7)
                  (Lorg/hibernate/Session;)Ljava/io/Serializable;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            checkcast java.io.Serializable
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.nonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.io.Serializable
            areturn
        end local 1 // java.lang.Object entity
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  entity  Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
        Name  Flags
      entity  final

  public java.io.Serializable save(java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)Ljava/io/Serializable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String entityName
        start local 2 // java.lang.Object entity
         0: .line 645
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* entityName */
            aload 2 /* entity */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$12(Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/io/Serializable; (7)
                  (Lorg/hibernate/Session;)Ljava/io/Serializable;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            checkcast java.io.Serializable
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.nonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.io.Serializable
            areturn
        end local 2 // java.lang.Object entity
        end local 1 // java.lang.String entityName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  entityName  Ljava/lang/String;
            0    1     2      entity  Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
            Name  Flags
      entityName  final
      entity      final

  public void update(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object entity
         0: .line 653
            aload 0 /* this */
            aload 1 /* entity */
            aconst_null
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.update:(Ljava/lang/Object;Lorg/hibernate/LockMode;)V
         1: .line 654
            return
        end local 1 // java.lang.Object entity
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  entity  Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
        Name  Flags
      entity  

  public void update(java.lang.Object, org.hibernate.LockMode);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/LockMode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object entity
        start local 2 // org.hibernate.LockMode lockMode
         0: .line 658
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* entity */
            aload 2 /* lockMode */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/Object;Lorg/hibernate/LockMode;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$13(Ljava/lang/Object;Lorg/hibernate/LockMode;Lorg/hibernate/Session;)Ljava/lang/Object; (7)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 666
            return
        end local 2 // org.hibernate.LockMode lockMode
        end local 1 // java.lang.Object entity
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1    entity  Ljava/lang/Object;
            0    2     2  lockMode  Lorg/hibernate/LockMode;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
        org.springframework.lang.Nullable()
    MethodParameters:
          Name  Flags
      entity    final
      lockMode  final

  public void update(java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String entityName
        start local 2 // java.lang.Object entity
         0: .line 670
            aload 0 /* this */
            aload 1 /* entityName */
            aload 2 /* entity */
            aconst_null
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.update:(Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/LockMode;)V
         1: .line 671
            return
        end local 2 // java.lang.Object entity
        end local 1 // java.lang.String entityName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  entityName  Ljava/lang/String;
            0    2     2      entity  Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
            Name  Flags
      entityName  
      entity      

  public void update(java.lang.String, java.lang.Object, org.hibernate.LockMode);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/LockMode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String entityName
        start local 2 // java.lang.Object entity
        start local 3 // org.hibernate.LockMode lockMode
         0: .line 677
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* entityName */
            aload 2 /* entity */
            aload 3 /* lockMode */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/LockMode;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$14(Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/LockMode;Lorg/hibernate/Session;)Ljava/lang/Object; (7)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 685
            return
        end local 3 // org.hibernate.LockMode lockMode
        end local 2 // java.lang.Object entity
        end local 1 // java.lang.String entityName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  entityName  Ljava/lang/String;
            0    2     2      entity  Ljava/lang/Object;
            0    2     3    lockMode  Lorg/hibernate/LockMode;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
        org.springframework.lang.Nullable()
    MethodParameters:
            Name  Flags
      entityName  final
      entity      final
      lockMode    final

  public void saveOrUpdate(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object entity
         0: .line 689
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* entity */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$15(Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object; (7)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 694
            return
        end local 1 // java.lang.Object entity
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  entity  Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
        Name  Flags
      entity  final

  public void saveOrUpdate(java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String entityName
        start local 2 // java.lang.Object entity
         0: .line 698
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* entityName */
            aload 2 /* entity */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$16(Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object; (7)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 703
            return
        end local 2 // java.lang.Object entity
        end local 1 // java.lang.String entityName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  entityName  Ljava/lang/String;
            0    2     2      entity  Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
            Name  Flags
      entityName  final
      entity      final

  public void replicate(java.lang.Object, org.hibernate.ReplicationMode);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/ReplicationMode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object entity
        start local 2 // org.hibernate.ReplicationMode replicationMode
         0: .line 709
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* entity */
            aload 2 /* replicationMode */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/Object;Lorg/hibernate/ReplicationMode;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$17(Ljava/lang/Object;Lorg/hibernate/ReplicationMode;Lorg/hibernate/Session;)Ljava/lang/Object; (7)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 714
            return
        end local 2 // org.hibernate.ReplicationMode replicationMode
        end local 1 // java.lang.Object entity
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1           entity  Ljava/lang/Object;
            0    2     2  replicationMode  Lorg/hibernate/ReplicationMode;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
                 Name  Flags
      entity           final
      replicationMode  final

  public void replicate(java.lang.String, java.lang.Object, org.hibernate.ReplicationMode);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/ReplicationMode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String entityName
        start local 2 // java.lang.Object entity
        start local 3 // org.hibernate.ReplicationMode replicationMode
         0: .line 720
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* entityName */
            aload 2 /* entity */
            aload 3 /* replicationMode */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/ReplicationMode;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$18(Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/ReplicationMode;Lorg/hibernate/Session;)Ljava/lang/Object; (7)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 725
            return
        end local 3 // org.hibernate.ReplicationMode replicationMode
        end local 2 // java.lang.Object entity
        end local 1 // java.lang.String entityName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1       entityName  Ljava/lang/String;
            0    2     2           entity  Ljava/lang/Object;
            0    2     3  replicationMode  Lorg/hibernate/ReplicationMode;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
                 Name  Flags
      entityName       final
      entity           final
      replicationMode  final

  public void persist(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object entity
         0: .line 729
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* entity */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$19(Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object; (7)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 734
            return
        end local 1 // java.lang.Object entity
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  entity  Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
        Name  Flags
      entity  final

  public void persist(java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String entityName
        start local 2 // java.lang.Object entity
         0: .line 738
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* entityName */
            aload 2 /* entity */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$20(Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object; (7)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 743
            return
        end local 2 // java.lang.Object entity
        end local 1 // java.lang.String entityName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  entityName  Ljava/lang/String;
            0    2     2      entity  Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
            Name  Flags
      entityName  final
      entity      final

  public <T> T merge();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object entity
         0: .line 748
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* entity */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$21(Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object; (7)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.nonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.Object entity
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  entity  TT;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: <T:Ljava/lang/Object;>(TT;)TT;
    MethodParameters:
        Name  Flags
      entity  final

  public <T> T merge(java.lang.String, );
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String entityName
        start local 2 // java.lang.Object entity
         0: .line 757
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* entityName */
            aload 2 /* entity */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$22(Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object; (7)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.nonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object entity
        end local 1 // java.lang.String entityName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  entityName  Ljava/lang/String;
            0    1     2      entity  TT;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/String;TT;)TT;
    MethodParameters:
            Name  Flags
      entityName  final
      entity      final

  public void delete(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object entity
         0: .line 765
            aload 0 /* this */
            aload 1 /* entity */
            aconst_null
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.delete:(Ljava/lang/Object;Lorg/hibernate/LockMode;)V
         1: .line 766
            return
        end local 1 // java.lang.Object entity
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  entity  Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
        Name  Flags
      entity  

  public void delete(java.lang.Object, org.hibernate.LockMode);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/LockMode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object entity
        start local 2 // org.hibernate.LockMode lockMode
         0: .line 770
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* lockMode */
            aload 1 /* entity */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Lorg/hibernate/LockMode;Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$23(Lorg/hibernate/LockMode;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object; (7)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 778
            return
        end local 2 // org.hibernate.LockMode lockMode
        end local 1 // java.lang.Object entity
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1    entity  Ljava/lang/Object;
            0    2     2  lockMode  Lorg/hibernate/LockMode;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
        org.springframework.lang.Nullable()
    MethodParameters:
          Name  Flags
      entity    final
      lockMode  final

  public void delete(java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String entityName
        start local 2 // java.lang.Object entity
         0: .line 782
            aload 0 /* this */
            aload 1 /* entityName */
            aload 2 /* entity */
            aconst_null
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.delete:(Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/LockMode;)V
         1: .line 783
            return
        end local 2 // java.lang.Object entity
        end local 1 // java.lang.String entityName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  entityName  Ljava/lang/String;
            0    2     2      entity  Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    MethodParameters:
            Name  Flags
      entityName  
      entity      

  public void delete(java.lang.String, java.lang.Object, org.hibernate.LockMode);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/LockMode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String entityName
        start local 2 // java.lang.Object entity
        start local 3 // org.hibernate.LockMode lockMode
         0: .line 789
            aload 0 /* this */
            aload 0 /* this */
            aload 3 /* lockMode */
            aload 1 /* entityName */
            aload 2 /* entity */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Lorg/hibernate/LockMode;Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$24(Lorg/hibernate/LockMode;Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object; (7)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 797
            return
        end local 3 // org.hibernate.LockMode lockMode
        end local 2 // java.lang.Object entity
        end local 1 // java.lang.String entityName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  entityName  Ljava/lang/String;
            0    2     2      entity  Ljava/lang/Object;
            0    2     3    lockMode  Lorg/hibernate/LockMode;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
        org.springframework.lang.Nullable()
    MethodParameters:
            Name  Flags
      entityName  final
      entity      final
      lockMode    final

  public void deleteAll(java.util.Collection<?>);
    descriptor: (Ljava/util/Collection;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.util.Collection entities
         0: .line 801
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* entities */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/util/Collection;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$25(Ljava/util/Collection;Lorg/hibernate/Session;)Ljava/lang/Object; (7)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 808
            return
        end local 1 // java.util.Collection entities
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1  entities  Ljava/util/Collection<*>;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: (Ljava/util/Collection<*>;)V
    MethodParameters:
          Name  Flags
      entities  final

  public void flush();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
         0: .line 812
            aload 0 /* this */
            invokedynamic doInHibernate()Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$26(Lorg/hibernate/Session;)Ljava/lang/Object; (6)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 816
            return
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
    Exceptions:
      throws org.springframework.dao.DataAccessException

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
         0: .line 820
            aload 0 /* this */
            invokedynamic doInHibernate()Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$27(Lorg/hibernate/Session;)Ljava/lang/Object; (6)
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            pop
         1: .line 824
            return
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
    Exceptions:
      throws org.springframework.dao.DataAccessException

  public java.util.List<?> findByCriteria(org.hibernate.criterion.DetachedCriteria);
    descriptor: (Lorg/hibernate/criterion/DetachedCriteria;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // org.hibernate.criterion.DetachedCriteria criteria
         0: .line 833
            aload 0 /* this */
            aload 1 /* criteria */
            iconst_m1
            iconst_m1
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.findByCriteria:(Lorg/hibernate/criterion/DetachedCriteria;II)Ljava/util/List;
            areturn
        end local 1 // org.hibernate.criterion.DetachedCriteria criteria
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  criteria  Lorg/hibernate/criterion/DetachedCriteria;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: (Lorg/hibernate/criterion/DetachedCriteria;)Ljava/util/List<*>;
    MethodParameters:
          Name  Flags
      criteria  

  public java.util.List<?> findByCriteria(org.hibernate.criterion.DetachedCriteria, int, int);
    descriptor: (Lorg/hibernate/criterion/DetachedCriteria;II)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // org.hibernate.criterion.DetachedCriteria criteria
        start local 2 // int firstResult
        start local 3 // int maxResults
         0: .line 841
            aload 1 /* criteria */
            ldc "DetachedCriteria must not be null"
            invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
         1: .line 842
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* criteria */
            iload 2 /* firstResult */
            iload 3 /* maxResults */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Lorg/hibernate/criterion/DetachedCriteria;II)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$28(Lorg/hibernate/criterion/DetachedCriteria;IILorg/hibernate/Session;)Ljava/util/List; (7)
                  (Lorg/hibernate/Session;)Ljava/util/List;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            checkcast java.util.List
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.nonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            areturn
        end local 3 // int maxResults
        end local 2 // int firstResult
        end local 1 // org.hibernate.criterion.DetachedCriteria criteria
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1     criteria  Lorg/hibernate/criterion/DetachedCriteria;
            0    2     2  firstResult  I
            0    2     3   maxResults  I
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: (Lorg/hibernate/criterion/DetachedCriteria;II)Ljava/util/List<*>;
    MethodParameters:
             Name  Flags
      criteria     final
      firstResult  final
      maxResults   final

  public <T> java.util.List<T> findByExample(T);
    descriptor: (Ljava/lang/Object;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object exampleEntity
         0: .line 857
            aload 0 /* this */
            aconst_null
            aload 1 /* exampleEntity */
            iconst_m1
            iconst_m1
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.findByExample:(Ljava/lang/String;Ljava/lang/Object;II)Ljava/util/List;
            areturn
        end local 1 // java.lang.Object exampleEntity
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  exampleEntity  TT;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: <T:Ljava/lang/Object;>(TT;)Ljava/util/List<TT;>;
    MethodParameters:
               Name  Flags
      exampleEntity  

  public <T> java.util.List<T> findByExample(java.lang.String, T);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String entityName
        start local 2 // java.lang.Object exampleEntity
         0: .line 862
            aload 0 /* this */
            aload 1 /* entityName */
            aload 2 /* exampleEntity */
            iconst_m1
            iconst_m1
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.findByExample:(Ljava/lang/String;Ljava/lang/Object;II)Ljava/util/List;
            areturn
        end local 2 // java.lang.Object exampleEntity
        end local 1 // java.lang.String entityName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1     entityName  Ljava/lang/String;
            0    1     2  exampleEntity  TT;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/String;TT;)Ljava/util/List<TT;>;
    MethodParameters:
               Name  Flags
      entityName     
      exampleEntity  

  public <T> java.util.List<T> findByExample(T, int, int);
    descriptor: (Ljava/lang/Object;II)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.Object exampleEntity
        start local 2 // int firstResult
        start local 3 // int maxResults
         0: .line 867
            aload 0 /* this */
            aconst_null
            aload 1 /* exampleEntity */
            iload 2 /* firstResult */
            iload 3 /* maxResults */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.findByExample:(Ljava/lang/String;Ljava/lang/Object;II)Ljava/util/List;
            areturn
        end local 3 // int maxResults
        end local 2 // int firstResult
        end local 1 // java.lang.Object exampleEntity
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  exampleEntity  TT;
            0    1     2    firstResult  I
            0    1     3     maxResults  I
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: <T:Ljava/lang/Object;>(TT;II)Ljava/util/List<TT;>;
    MethodParameters:
               Name  Flags
      exampleEntity  
      firstResult    
      maxResults     

  public <T> java.util.List<T> findByExample(java.lang.String, T, int, int);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;II)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String entityName
        start local 2 // java.lang.Object exampleEntity
        start local 3 // int firstResult
        start local 4 // int maxResults
         0: .line 876
            aload 2 /* exampleEntity */
            ldc "Example entity must not be null"
            invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
         1: .line 877
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* entityName */
            aload 2 /* exampleEntity */
            iload 3 /* firstResult */
            iload 4 /* maxResults */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/String;Ljava/lang/Object;II)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$29(Ljava/lang/String;Ljava/lang/Object;IILorg/hibernate/Session;)Ljava/util/List; (7)
                  (Lorg/hibernate/Session;)Ljava/util/List;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            checkcast java.util.List
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.nonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            areturn
        end local 4 // int maxResults
        end local 3 // int firstResult
        end local 2 // java.lang.Object exampleEntity
        end local 1 // java.lang.String entityName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     1     entityName  Ljava/lang/String;
            0    2     2  exampleEntity  TT;
            0    2     3    firstResult  I
            0    2     4     maxResults  I
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/String;TT;II)Ljava/util/List<TT;>;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
      1:
      2:
      3:
    MethodParameters:
               Name  Flags
      entityName     final
      exampleEntity  final
      firstResult    final
      maxResults     final

  public java.util.List<?> find(java.lang.String, []);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/List;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String queryString
        start local 2 // java.lang.Object[] values
         0: .line 901
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* queryString */
            aload 2 /* values */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/String;[Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$30(Ljava/lang/String;[Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/util/List; (7)
                  (Lorg/hibernate/Session;)Ljava/util/List;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            checkcast java.util.List
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.nonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            areturn
        end local 2 // java.lang.Object[] values
        end local 1 // java.lang.String queryString
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  queryString  Ljava/lang/String;
            0    1     2       values  [Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: (Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/List<*>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
        org.springframework.lang.Nullable()
    MethodParameters:
             Name  Flags
      queryString  final
      values       final

  public java.util.List<?> findByNamedParam(java.lang.String, java.lang.String, );
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String queryString
        start local 2 // java.lang.String paramName
        start local 3 // java.lang.Object value
         0: .line 919
            aload 0 /* this */
            aload 1 /* queryString */
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 2 /* paramName */
            aastore
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* value */
            aastore
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.findByNamedParam:(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/List;
            areturn
        end local 3 // java.lang.Object value
        end local 2 // java.lang.String paramName
        end local 1 // java.lang.String queryString
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  queryString  Ljava/lang/String;
            0    1     2    paramName  Ljava/lang/String;
            0    1     3        value  Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)Ljava/util/List<*>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
             Name  Flags
      queryString  
      paramName    
      value        

  public java.util.List<?> findByNamedParam(java.lang.String, java.lang.String[], []);
    descriptor: (Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String queryString
        start local 2 // java.lang.String[] paramNames
        start local 3 // java.lang.Object[] values
         0: .line 928
            aload 2 /* paramNames */
            arraylength
            aload 3 /* values */
            arraylength
            if_icmpeq 2
         1: .line 929
            new java.lang.IllegalArgumentException
            dup
            ldc "Length of paramNames array must match length of values array"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 931
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* queryString */
            aload 3 /* values */
            aload 2 /* paramNames */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$31(Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;Lorg/hibernate/Session;)Ljava/util/List; (7)
                  (Lorg/hibernate/Session;)Ljava/util/List;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            checkcast java.util.List
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.nonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            areturn
        end local 3 // java.lang.Object[] values
        end local 2 // java.lang.String[] paramNames
        end local 1 // java.lang.String queryString
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    3     1  queryString  Ljava/lang/String;
            0    3     2   paramNames  [Ljava/lang/String;
            0    3     3       values  [Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: (Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/List<*>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
             Name  Flags
      queryString  final
      paramNames   final
      values       final

  public java.util.List<?> findByValueBean(java.lang.String, );
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String queryString
        start local 2 // java.lang.Object valueBean
         0: .line 948
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* queryString */
            aload 2 /* valueBean */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$32(Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/util/List; (7)
                  (Lorg/hibernate/Session;)Ljava/util/List;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            checkcast java.util.List
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.nonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            areturn
        end local 2 // java.lang.Object valueBean
        end local 1 // java.lang.String queryString
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  queryString  Ljava/lang/String;
            0    1     2    valueBean  Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: (Ljava/lang/String;Ljava/lang/Object;)Ljava/util/List<*>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
             Name  Flags
      queryString  final
      valueBean    final

  public java.util.List<?> findByNamedQuery(java.lang.String, []);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/List;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String queryName
        start local 2 // java.lang.Object[] values
         0: .line 966
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* queryName */
            aload 2 /* values */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/String;[Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$33(Ljava/lang/String;[Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/util/List; (7)
                  (Lorg/hibernate/Session;)Ljava/util/List;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            checkcast java.util.List
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.nonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            areturn
        end local 2 // java.lang.Object[] values
        end local 1 // java.lang.String queryName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  queryName  Ljava/lang/String;
            0    1     2     values  [Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: (Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/List<*>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
        org.springframework.lang.Nullable()
    MethodParameters:
           Name  Flags
      queryName  final
      values     final

  public java.util.List<?> findByNamedQueryAndNamedParam(java.lang.String, java.lang.String, );
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String queryName
        start local 2 // java.lang.String paramName
        start local 3 // java.lang.Object value
         0: .line 984
            aload 0 /* this */
            aload 1 /* queryName */
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 2 /* paramName */
            aastore
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* value */
            aastore
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.findByNamedQueryAndNamedParam:(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/List;
            areturn
        end local 3 // java.lang.Object value
        end local 2 // java.lang.String paramName
        end local 1 // java.lang.String queryName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  queryName  Ljava/lang/String;
            0    1     2  paramName  Ljava/lang/String;
            0    1     3      value  Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)Ljava/util/List<*>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
           Name  Flags
      queryName  
      paramName  
      value      

  public java.util.List<?> findByNamedQueryAndNamedParam(java.lang.String, java.lang.String[], []);
    descriptor: (Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String queryName
        start local 2 // java.lang.String[] paramNames
        start local 3 // java.lang.Object[] values
         0: .line 994
            aload 3 /* values */
            ifnull 2
            aload 2 /* paramNames */
            ifnull 1
            aload 2 /* paramNames */
            arraylength
            aload 3 /* values */
            arraylength
            if_icmpeq 2
         1: .line 995
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Length of paramNames array must match length of values array"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 997
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* queryName */
            aload 3 /* values */
            aload 2 /* paramNames */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$34(Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;Lorg/hibernate/Session;)Ljava/util/List; (7)
                  (Lorg/hibernate/Session;)Ljava/util/List;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            checkcast java.util.List
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.nonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            areturn
        end local 3 // java.lang.Object[] values
        end local 2 // java.lang.String[] paramNames
        end local 1 // java.lang.String queryName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    3     1   queryName  Ljava/lang/String;
            0    3     2  paramNames  [Ljava/lang/String;
            0    3     3      values  [Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: (Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/List<*>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
        org.springframework.lang.Nullable()
      2:
        org.springframework.lang.Nullable()
    MethodParameters:
            Name  Flags
      queryName   final
      paramNames  final
      values      final

  public java.util.List<?> findByNamedQueryAndValueBean(java.lang.String, );
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String queryName
        start local 2 // java.lang.Object valueBean
         0: .line 1016
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* queryName */
            aload 2 /* valueBean */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$35(Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/util/List; (7)
                  (Lorg/hibernate/Session;)Ljava/util/List;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            checkcast java.util.List
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.nonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            areturn
        end local 2 // java.lang.Object valueBean
        end local 1 // java.lang.String queryName
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  queryName  Ljava/lang/String;
            0    1     2  valueBean  Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: (Ljava/lang/String;Ljava/lang/Object;)Ljava/util/List<*>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
           Name  Flags
      queryName  final
      valueBean  final

  public java.util.Iterator<?> iterate(java.lang.String, []);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Iterator;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String queryString
        start local 2 // java.lang.Object[] values
         0: .line 1034
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* queryString */
            aload 2 /* values */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/String;[Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$36(Ljava/lang/String;[Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/util/Iterator; (7)
                  (Lorg/hibernate/Session;)Ljava/util/Iterator;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            checkcast java.util.Iterator
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.nonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Iterator
            areturn
        end local 2 // java.lang.Object[] values
        end local 1 // java.lang.String queryString
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    1     1  queryString  Ljava/lang/String;
            0    1     2       values  [Ljava/lang/Object;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: (Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Iterator<*>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
        org.springframework.lang.Nullable()
    MethodParameters:
             Name  Flags
      queryString  final
      values       final

  public void closeIterator(java.util.Iterator<?>);
    descriptor: (Ljava/util/Iterator;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.util.Iterator it
         0: .line 1051
            aload 1 /* it */
            invokestatic org.hibernate.Hibernate.close:(Ljava/util/Iterator;)V
         1: .line 1052
            goto 4
         2: .line 1053
      StackMap locals:
      StackMap stack: org.hibernate.HibernateException
            astore 2 /* ex */
        start local 2 // org.hibernate.HibernateException ex
         3: .line 1054
            aload 2 /* ex */
            invokestatic org.springframework.orm.hibernate5.SessionFactoryUtils.convertHibernateAccessException:(Lorg/hibernate/HibernateException;)Lorg/springframework/dao/DataAccessException;
            athrow
        end local 2 // org.hibernate.HibernateException ex
         4: .line 1056
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.Iterator it
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    5     1    it  Ljava/util/Iterator<*>;
            3    4     2    ex  Lorg/hibernate/HibernateException;
      Exception table:
        from    to  target  type
           0     1       2  Class org.hibernate.HibernateException
    Exceptions:
      throws org.springframework.dao.DataAccessException
    Signature: (Ljava/util/Iterator<*>;)V
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      it    

  public int bulkUpdate(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)I
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // java.lang.String queryString
        start local 2 // java.lang.Object[] values
         0: .line 1062
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* queryString */
            aload 2 /* values */
            invokedynamic doInHibernate(Lorg/springframework/orm/hibernate5/HibernateTemplate;Ljava/lang/String;[Ljava/lang/Object;)Lorg/springframework/orm/hibernate5/HibernateCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/hibernate/Session;)Ljava/lang/Object;
                  org/springframework/orm/hibernate5/HibernateTemplate.lambda$37(Ljava/lang/String;[Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Integer; (7)
                  (Lorg/hibernate/Session;)Ljava/lang/Integer;
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession:(Lorg/springframework/orm/hibernate5/HibernateCallback;)Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 3 /* result */
        start local 3 // java.lang.Integer result
         1: .line 1073
            aload 3 /* result */
            ifnull 2
            iconst_1
            goto 3
      StackMap locals: java.lang.Integer
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: ldc "No update count"
            invokestatic org.springframework.util.Assert.state:(ZLjava/lang/String;)V
         4: .line 1074
            aload 3 /* result */
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
        end local 3 // java.lang.Integer result
        end local 2 // java.lang.Object[] values
        end local 1 // java.lang.String queryString
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    5     1  queryString  Ljava/lang/String;
            0    5     2       values  [Ljava/lang/Object;
            1    5     3       result  Ljava/lang/Integer;
    Exceptions:
      throws org.springframework.dao.DataAccessException
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
        org.springframework.lang.Nullable()
    MethodParameters:
             Name  Flags
      queryString  final
      values       final

  protected void checkWriteOperationAllowed(org.hibernate.Session);
    descriptor: (Lorg/hibernate/Session;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // org.hibernate.Session session
         0: .line 1093
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.isCheckWriteOperations:()Z
            ifeq 4
            aload 1 /* session */
            invokestatic org.springframework.orm.hibernate5.SessionFactoryUtils.getFlushMode:(Lorg/hibernate/Session;)Lorg/hibernate/FlushMode;
            getstatic org.hibernate.FlushMode.COMMIT:Lorg/hibernate/FlushMode;
            invokevirtual org.hibernate.FlushMode.lessThan:(Lorg/hibernate/FlushMode;)Z
            ifeq 4
         1: .line 1094
            new org.springframework.dao.InvalidDataAccessApiUsageException
            dup
         2: .line 1095
            ldc "Write operations are not allowed in read-only mode (FlushMode.MANUAL): Turn your Session into FlushMode.COMMIT/AUTO or remove 'readOnly' marker from transaction definition."
         3: .line 1094
            invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1098
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    5     1  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.springframework.dao.InvalidDataAccessApiUsageException
    MethodParameters:
         Name  Flags
      session  

  protected void prepareCriteria(org.hibernate.Criteria);
    descriptor: (Lorg/hibernate/Criteria;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // org.hibernate.Criteria criteria
         0: .line 1108
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.isCacheQueries:()Z
            ifeq 4
         1: .line 1109
            aload 1 /* criteria */
            iconst_1
            invokeinterface org.hibernate.Criteria.setCacheable:(Z)Lorg/hibernate/Criteria;
            pop
         2: .line 1110
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.getQueryCacheRegion:()Ljava/lang/String;
            ifnull 4
         3: .line 1111
            aload 1 /* criteria */
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.getQueryCacheRegion:()Ljava/lang/String;
            invokeinterface org.hibernate.Criteria.setCacheRegion:(Ljava/lang/String;)Lorg/hibernate/Criteria;
            pop
         4: .line 1114
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.getFetchSize:()I
            ifle 6
         5: .line 1115
            aload 1 /* criteria */
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.getFetchSize:()I
            invokeinterface org.hibernate.Criteria.setFetchSize:(I)Lorg/hibernate/Criteria;
            pop
         6: .line 1117
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.getMaxResults:()I
            ifle 8
         7: .line 1118
            aload 1 /* criteria */
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.getMaxResults:()I
            invokeinterface org.hibernate.Criteria.setMaxResults:(I)Lorg/hibernate/Criteria;
            pop
         8: .line 1122
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.obtainSessionFactory:()Lorg/hibernate/SessionFactory;
            invokestatic org.springframework.transaction.support.TransactionSynchronizationManager.getResource:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.springframework.transaction.support.ResourceHolderSupport
         9: .line 1121
            astore 2 /* sessionHolder */
        start local 2 // org.springframework.transaction.support.ResourceHolderSupport sessionHolder
        10: .line 1123
            aload 2 /* sessionHolder */
            ifnull 12
            aload 2 /* sessionHolder */
            invokevirtual org.springframework.transaction.support.ResourceHolderSupport.hasTimeout:()Z
            ifeq 12
        11: .line 1124
            aload 1 /* criteria */
            aload 2 /* sessionHolder */
            invokevirtual org.springframework.transaction.support.ResourceHolderSupport.getTimeToLiveInSeconds:()I
            invokeinterface org.hibernate.Criteria.setTimeout:(I)Lorg/hibernate/Criteria;
            pop
        12: .line 1126
      StackMap locals: org.springframework.transaction.support.ResourceHolderSupport
      StackMap stack:
            return
        end local 2 // org.springframework.transaction.support.ResourceHolderSupport sessionHolder
        end local 1 // org.hibernate.Criteria criteria
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   13     0           this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0   13     1       criteria  Lorg/hibernate/Criteria;
           10   13     2  sessionHolder  Lorg/springframework/transaction/support/ResourceHolderSupport;
    MethodParameters:
          Name  Flags
      criteria  

  protected void prepareQuery(org.hibernate.Query);
    descriptor: (Lorg/hibernate/Query;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // org.hibernate.Query queryObject
         0: .line 1137
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.isCacheQueries:()Z
            ifeq 4
         1: .line 1138
            aload 1 /* queryObject */
            iconst_1
            invokeinterface org.hibernate.Query.setCacheable:(Z)Lorg/hibernate/Query;
            pop
         2: .line 1139
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.getQueryCacheRegion:()Ljava/lang/String;
            ifnull 4
         3: .line 1140
            aload 1 /* queryObject */
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.getQueryCacheRegion:()Ljava/lang/String;
            invokeinterface org.hibernate.Query.setCacheRegion:(Ljava/lang/String;)Lorg/hibernate/Query;
            pop
         4: .line 1143
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.getFetchSize:()I
            ifle 6
         5: .line 1144
            aload 1 /* queryObject */
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.getFetchSize:()I
            invokeinterface org.hibernate.Query.setFetchSize:(I)Lorg/hibernate/Query;
            pop
         6: .line 1146
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.getMaxResults:()I
            ifle 8
         7: .line 1147
            aload 1 /* queryObject */
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.getMaxResults:()I
            invokeinterface org.hibernate.Query.setMaxResults:(I)Lorg/hibernate/Query;
            pop
         8: .line 1151
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.obtainSessionFactory:()Lorg/hibernate/SessionFactory;
            invokestatic org.springframework.transaction.support.TransactionSynchronizationManager.getResource:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.springframework.transaction.support.ResourceHolderSupport
         9: .line 1150
            astore 2 /* sessionHolder */
        start local 2 // org.springframework.transaction.support.ResourceHolderSupport sessionHolder
        10: .line 1152
            aload 2 /* sessionHolder */
            ifnull 12
            aload 2 /* sessionHolder */
            invokevirtual org.springframework.transaction.support.ResourceHolderSupport.hasTimeout:()Z
            ifeq 12
        11: .line 1153
            aload 1 /* queryObject */
            aload 2 /* sessionHolder */
            invokevirtual org.springframework.transaction.support.ResourceHolderSupport.getTimeToLiveInSeconds:()I
            invokeinterface org.hibernate.Query.setTimeout:(I)Lorg/hibernate/Query;
            pop
        12: .line 1155
      StackMap locals: org.springframework.transaction.support.ResourceHolderSupport
      StackMap stack:
            return
        end local 2 // org.springframework.transaction.support.ResourceHolderSupport sessionHolder
        end local 1 // org.hibernate.Query queryObject
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   13     0           this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0   13     1    queryObject  Lorg/hibernate/Query;
           10   13     2  sessionHolder  Lorg/springframework/transaction/support/ResourceHolderSupport;
    MethodParameters:
             Name  Flags
      queryObject  

  protected void applyNamedParameterToQuery(org.hibernate.Query, java.lang.String, java.lang.Object);
    descriptor: (Lorg/hibernate/Query;Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 1 // org.hibernate.Query queryObject
        start local 2 // java.lang.String paramName
        start local 3 // java.lang.Object value
         0: .line 1169
            aload 3 /* value */
            instanceof java.util.Collection
            ifeq 3
         1: .line 1170
            aload 1 /* queryObject */
            aload 2 /* paramName */
            aload 3 /* value */
            checkcast java.util.Collection
            invokeinterface org.hibernate.Query.setParameterList:(Ljava/lang/String;Ljava/util/Collection;)Lorg/hibernate/Query;
            pop
         2: .line 1171
            goto 7
         3: .line 1172
      StackMap locals:
      StackMap stack:
            aload 3 /* value */
            instanceof java.lang.Object[]
            ifeq 6
         4: .line 1173
            aload 1 /* queryObject */
            aload 2 /* paramName */
            aload 3 /* value */
            checkcast java.lang.Object[]
            invokeinterface org.hibernate.Query.setParameterList:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/hibernate/Query;
            pop
         5: .line 1174
            goto 7
         6: .line 1176
      StackMap locals:
      StackMap stack:
            aload 1 /* queryObject */
            aload 2 /* paramName */
            aload 3 /* value */
            invokeinterface org.hibernate.Query.setParameter:(Ljava/lang/String;Ljava/lang/Object;)Lorg/hibernate/Query;
            pop
         7: .line 1178
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.Object value
        end local 2 // java.lang.String paramName
        end local 1 // org.hibernate.Query queryObject
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    8     1  queryObject  Lorg/hibernate/Query;
            0    8     2    paramName  Ljava/lang/String;
            0    8     3        value  Ljava/lang/Object;
    Exceptions:
      throws org.hibernate.HibernateException
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
             Name  Flags
      queryObject  
      paramName    
      value        

  private static org.hibernate.Query queryObject(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Lorg/hibernate/Query;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.Object result
         0: .line 1183
            aload 0 /* result */
            ifnull 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ldc "No Hibernate Query"
            invokestatic org.springframework.util.Assert.state:(ZLjava/lang/String;)V
         3: .line 1184
            aload 0 /* result */
            checkcast org.hibernate.Query
            areturn
        end local 0 // java.lang.Object result
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0  result  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
        Name  Flags
      result  

  private static <T> T nonNull();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.Object result
         0: .line 1188
            aload 0 /* result */
            ifnull 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ldc "No result"
            invokestatic org.springframework.util.Assert.state:(ZLjava/lang/String;)V
         3: .line 1189
            aload 0 /* result */
            areturn
        end local 0 // java.lang.Object result
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0  result  TT;
    Signature: <T:Ljava/lang/Object;>(TT;)TT;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
        Name  Flags
      result  

  private static java.lang.Object lambda$0(org.hibernate.LockMode, java.lang.Class, java.io.Serializable, org.hibernate.Session);
    descriptor: (Lorg/hibernate/LockMode;Ljava/lang/Class;Ljava/io/Serializable;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=6, locals=4, args_size=4
        start local 3 // org.hibernate.Session session
         0: .line 471
            aload 0
            ifnull 2
         1: .line 472
            aload 3 /* session */
            aload 1
            aload 2
            new org.hibernate.LockOptions
            dup
            aload 0
            invokespecial org.hibernate.LockOptions.<init>:(Lorg/hibernate/LockMode;)V
            invokeinterface org.hibernate.Session.get:(Ljava/lang/Class;Ljava/io/Serializable;Lorg/hibernate/LockOptions;)Ljava/lang/Object;
            areturn
         2: .line 475
      StackMap locals:
      StackMap stack:
            aload 3 /* session */
            aload 1
            aload 2
            invokeinterface org.hibernate.Session.get:(Ljava/lang/Class;Ljava/io/Serializable;)Ljava/lang/Object;
            areturn
        end local 3 // org.hibernate.Session session
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     3  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private static java.lang.Object lambda$1(org.hibernate.LockMode, java.lang.String, java.io.Serializable, org.hibernate.Session);
    descriptor: (Lorg/hibernate/LockMode;Ljava/lang/String;Ljava/io/Serializable;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=6, locals=4, args_size=4
        start local 3 // org.hibernate.Session session
         0: .line 492
            aload 0
            ifnull 2
         1: .line 493
            aload 3 /* session */
            aload 1
            aload 2
            new org.hibernate.LockOptions
            dup
            aload 0
            invokespecial org.hibernate.LockOptions.<init>:(Lorg/hibernate/LockMode;)V
            invokeinterface org.hibernate.Session.get:(Ljava/lang/String;Ljava/io/Serializable;Lorg/hibernate/LockOptions;)Ljava/lang/Object;
            areturn
         2: .line 496
      StackMap locals:
      StackMap stack:
            aload 3 /* session */
            aload 1
            aload 2
            invokeinterface org.hibernate.Session.get:(Ljava/lang/String;Ljava/io/Serializable;)Ljava/lang/Object;
            areturn
        end local 3 // org.hibernate.Session session
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     3  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private static java.lang.Object lambda$2(org.hibernate.LockMode, java.lang.Class, java.io.Serializable, org.hibernate.Session);
    descriptor: (Lorg/hibernate/LockMode;Ljava/lang/Class;Ljava/io/Serializable;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=6, locals=4, args_size=4
        start local 3 // org.hibernate.Session session
         0: .line 511
            aload 0
            ifnull 2
         1: .line 512
            aload 3 /* session */
            aload 1
            aload 2
            new org.hibernate.LockOptions
            dup
            aload 0
            invokespecial org.hibernate.LockOptions.<init>:(Lorg/hibernate/LockMode;)V
            invokeinterface org.hibernate.Session.load:(Ljava/lang/Class;Ljava/io/Serializable;Lorg/hibernate/LockOptions;)Ljava/lang/Object;
            areturn
         2: .line 515
      StackMap locals:
      StackMap stack:
            aload 3 /* session */
            aload 1
            aload 2
            invokeinterface org.hibernate.Session.load:(Ljava/lang/Class;Ljava/io/Serializable;)Ljava/lang/Object;
            areturn
        end local 3 // org.hibernate.Session session
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     3  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private static java.lang.Object lambda$3(org.hibernate.LockMode, java.lang.String, java.io.Serializable, org.hibernate.Session);
    descriptor: (Lorg/hibernate/LockMode;Ljava/lang/String;Ljava/io/Serializable;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=6, locals=4, args_size=4
        start local 3 // org.hibernate.Session session
         0: .line 530
            aload 0
            ifnull 2
         1: .line 531
            aload 3 /* session */
            aload 1
            aload 2
            new org.hibernate.LockOptions
            dup
            aload 0
            invokespecial org.hibernate.LockOptions.<init>:(Lorg/hibernate/LockMode;)V
            invokeinterface org.hibernate.Session.load:(Ljava/lang/String;Ljava/io/Serializable;Lorg/hibernate/LockOptions;)Ljava/lang/Object;
            areturn
         2: .line 534
      StackMap locals:
      StackMap stack:
            aload 3 /* session */
            aload 1
            aload 2
            invokeinterface org.hibernate.Session.load:(Ljava/lang/String;Ljava/io/Serializable;)Ljava/lang/Object;
            areturn
        end local 3 // org.hibernate.Session session
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     3  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.util.List lambda$4(java.lang.Class, org.hibernate.Session);
    descriptor: (Ljava/lang/Class;Lorg/hibernate/Session;)Ljava/util/List;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 2 // org.hibernate.Session session
         0: .line 543
            aload 2 /* session */
            aload 1
            invokeinterface org.hibernate.Session.createCriteria:(Ljava/lang/Class;)Lorg/hibernate/Criteria;
            astore 3 /* criteria */
        start local 3 // org.hibernate.Criteria criteria
         1: .line 544
            aload 3 /* criteria */
            getstatic org.hibernate.Criteria.DISTINCT_ROOT_ENTITY:Lorg/hibernate/transform/ResultTransformer;
            invokeinterface org.hibernate.Criteria.setResultTransformer:(Lorg/hibernate/transform/ResultTransformer;)Lorg/hibernate/Criteria;
            pop
         2: .line 545
            aload 0 /* this */
            aload 3 /* criteria */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.prepareCriteria:(Lorg/hibernate/Criteria;)V
         3: .line 546
            aload 3 /* criteria */
            invokeinterface org.hibernate.Criteria.list:()Ljava/util/List;
            areturn
        end local 3 // org.hibernate.Criteria criteria
        end local 2 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    4     2   session  Lorg/hibernate/Session;
            1    4     3  criteria  Lorg/hibernate/Criteria;
    Exceptions:
      throws org.hibernate.HibernateException

  private static java.lang.Object lambda$5(java.lang.Object, java.io.Serializable, org.hibernate.Session);
    descriptor: (Ljava/lang/Object;Ljava/io/Serializable;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 2 // org.hibernate.Session session
         0: .line 554
            aload 2 /* session */
            aload 0
            aload 1
            invokeinterface org.hibernate.Session.load:(Ljava/lang/Object;Ljava/io/Serializable;)V
         1: .line 555
            aconst_null
            areturn
        end local 2 // org.hibernate.Session session
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     2  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private static java.lang.Object lambda$6(org.hibernate.LockMode, java.lang.Object, org.hibernate.Session);
    descriptor: (Lorg/hibernate/LockMode;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=5, locals=3, args_size=3
        start local 2 // org.hibernate.Session session
         0: .line 567
            aload 0
            ifnull 3
         1: .line 568
            aload 2 /* session */
            aload 1
            new org.hibernate.LockOptions
            dup
            aload 0
            invokespecial org.hibernate.LockOptions.<init>:(Lorg/hibernate/LockMode;)V
            invokeinterface org.hibernate.Session.refresh:(Ljava/lang/Object;Lorg/hibernate/LockOptions;)V
         2: .line 569
            goto 4
         3: .line 571
      StackMap locals:
      StackMap stack:
            aload 2 /* session */
            aload 1
            invokeinterface org.hibernate.Session.refresh:(Ljava/lang/Object;)V
         4: .line 573
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // org.hibernate.Session session
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     2  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private static java.lang.Boolean lambda$7(java.lang.Object, org.hibernate.Session);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Boolean;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // org.hibernate.Session session
         0: .line 579
            aload 1 /* session */
            aload 0
            invokeinterface org.hibernate.Session.contains:(Ljava/lang/Object;)Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            areturn
        end local 1 // org.hibernate.Session session
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     1  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private static java.lang.Object lambda$8(java.lang.Object, org.hibernate.Session);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // org.hibernate.Session session
         0: .line 587
            aload 1 /* session */
            aload 0
            invokeinterface org.hibernate.Session.evict:(Ljava/lang/Object;)V
         1: .line 588
            aconst_null
            areturn
        end local 1 // org.hibernate.Session session
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     1  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private static java.lang.Object lambda$9(org.hibernate.LockMode, java.lang.Object, org.hibernate.Session);
    descriptor: (Lorg/hibernate/LockMode;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=3, args_size=3
        start local 2 // org.hibernate.Session session
         0: .line 620
            aload 2 /* session */
            new org.hibernate.LockOptions
            dup
            aload 0
            invokespecial org.hibernate.LockOptions.<init>:(Lorg/hibernate/LockMode;)V
            invokeinterface org.hibernate.Session.buildLockRequest:(Lorg/hibernate/LockOptions;)Lorg/hibernate/Session$LockRequest;
            aload 1
            invokeinterface org.hibernate.Session$LockRequest.lock:(Ljava/lang/Object;)V
         1: .line 621
            aconst_null
            areturn
        end local 2 // org.hibernate.Session session
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     2  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private static java.lang.Object lambda$10(org.hibernate.LockMode, java.lang.String, java.lang.Object, org.hibernate.Session);
    descriptor: (Lorg/hibernate/LockMode;Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=4
        start local 3 // org.hibernate.Session session
         0: .line 630
            aload 3 /* session */
            new org.hibernate.LockOptions
            dup
            aload 0
            invokespecial org.hibernate.LockOptions.<init>:(Lorg/hibernate/LockMode;)V
            invokeinterface org.hibernate.Session.buildLockRequest:(Lorg/hibernate/LockOptions;)Lorg/hibernate/Session$LockRequest;
            aload 1
            aload 2
            invokeinterface org.hibernate.Session$LockRequest.lock:(Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 631
            aconst_null
            areturn
        end local 3 // org.hibernate.Session session
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     3  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.io.Serializable lambda$11(java.lang.Object, org.hibernate.Session);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/io/Serializable;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 2 // org.hibernate.Session session
         0: .line 638
            aload 0 /* this */
            aload 2 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperationAllowed:(Lorg/hibernate/Session;)V
         1: .line 639
            aload 2 /* session */
            aload 1
            invokeinterface org.hibernate.Session.save:(Ljava/lang/Object;)Ljava/io/Serializable;
            areturn
        end local 2 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     2  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.io.Serializable lambda$12(java.lang.String, java.lang.Object, org.hibernate.Session);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/io/Serializable;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 3 // org.hibernate.Session session
         0: .line 646
            aload 0 /* this */
            aload 3 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperationAllowed:(Lorg/hibernate/Session;)V
         1: .line 647
            aload 3 /* session */
            aload 1
            aload 2
            invokeinterface org.hibernate.Session.save:(Ljava/lang/String;Ljava/lang/Object;)Ljava/io/Serializable;
            areturn
        end local 3 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     3  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.lang.Object lambda$13(java.lang.Object, org.hibernate.LockMode, org.hibernate.Session);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/LockMode;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 3 // org.hibernate.Session session
         0: .line 659
            aload 0 /* this */
            aload 3 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperationAllowed:(Lorg/hibernate/Session;)V
         1: .line 660
            aload 3 /* session */
            aload 1
            invokeinterface org.hibernate.Session.update:(Ljava/lang/Object;)V
         2: .line 661
            aload 2
            ifnull 4
         3: .line 662
            aload 3 /* session */
            new org.hibernate.LockOptions
            dup
            aload 2
            invokespecial org.hibernate.LockOptions.<init>:(Lorg/hibernate/LockMode;)V
            invokeinterface org.hibernate.Session.buildLockRequest:(Lorg/hibernate/LockOptions;)Lorg/hibernate/Session$LockRequest;
            aload 1
            invokeinterface org.hibernate.Session$LockRequest.lock:(Ljava/lang/Object;)V
         4: .line 664
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    5     3  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.lang.Object lambda$14(java.lang.String, java.lang.Object, org.hibernate.LockMode, org.hibernate.Session);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/LockMode;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 4 // org.hibernate.Session session
         0: .line 678
            aload 0 /* this */
            aload 4 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperationAllowed:(Lorg/hibernate/Session;)V
         1: .line 679
            aload 4 /* session */
            aload 1
            aload 2
            invokeinterface org.hibernate.Session.update:(Ljava/lang/String;Ljava/lang/Object;)V
         2: .line 680
            aload 3
            ifnull 4
         3: .line 681
            aload 4 /* session */
            new org.hibernate.LockOptions
            dup
            aload 3
            invokespecial org.hibernate.LockOptions.<init>:(Lorg/hibernate/LockMode;)V
            invokeinterface org.hibernate.Session.buildLockRequest:(Lorg/hibernate/LockOptions;)Lorg/hibernate/Session$LockRequest;
            aload 1
            aload 2
            invokeinterface org.hibernate.Session$LockRequest.lock:(Ljava/lang/String;Ljava/lang/Object;)V
         4: .line 683
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 4 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    5     4  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.lang.Object lambda$15(java.lang.Object, org.hibernate.Session);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 2 // org.hibernate.Session session
         0: .line 690
            aload 0 /* this */
            aload 2 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperationAllowed:(Lorg/hibernate/Session;)V
         1: .line 691
            aload 2 /* session */
            aload 1
            invokeinterface org.hibernate.Session.saveOrUpdate:(Ljava/lang/Object;)V
         2: .line 692
            aconst_null
            areturn
        end local 2 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    3     2  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.lang.Object lambda$16(java.lang.String, java.lang.Object, org.hibernate.Session);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 3 // org.hibernate.Session session
         0: .line 699
            aload 0 /* this */
            aload 3 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperationAllowed:(Lorg/hibernate/Session;)V
         1: .line 700
            aload 3 /* session */
            aload 1
            aload 2
            invokeinterface org.hibernate.Session.saveOrUpdate:(Ljava/lang/String;Ljava/lang/Object;)V
         2: .line 701
            aconst_null
            areturn
        end local 3 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    3     3  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.lang.Object lambda$17(java.lang.Object, org.hibernate.ReplicationMode, org.hibernate.Session);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/ReplicationMode;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 3 // org.hibernate.Session session
         0: .line 710
            aload 0 /* this */
            aload 3 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperationAllowed:(Lorg/hibernate/Session;)V
         1: .line 711
            aload 3 /* session */
            aload 1
            aload 2
            invokeinterface org.hibernate.Session.replicate:(Ljava/lang/Object;Lorg/hibernate/ReplicationMode;)V
         2: .line 712
            aconst_null
            areturn
        end local 3 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    3     3  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.lang.Object lambda$18(java.lang.String, java.lang.Object, org.hibernate.ReplicationMode, org.hibernate.Session);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/ReplicationMode;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 4 // org.hibernate.Session session
         0: .line 721
            aload 0 /* this */
            aload 4 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperationAllowed:(Lorg/hibernate/Session;)V
         1: .line 722
            aload 4 /* session */
            aload 1
            aload 2
            aload 3
            invokeinterface org.hibernate.Session.replicate:(Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/ReplicationMode;)V
         2: .line 723
            aconst_null
            areturn
        end local 4 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    3     4  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.lang.Object lambda$19(java.lang.Object, org.hibernate.Session);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 2 // org.hibernate.Session session
         0: .line 730
            aload 0 /* this */
            aload 2 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperationAllowed:(Lorg/hibernate/Session;)V
         1: .line 731
            aload 2 /* session */
            aload 1
            invokeinterface org.hibernate.Session.persist:(Ljava/lang/Object;)V
         2: .line 732
            aconst_null
            areturn
        end local 2 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    3     2  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.lang.Object lambda$20(java.lang.String, java.lang.Object, org.hibernate.Session);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 3 // org.hibernate.Session session
         0: .line 739
            aload 0 /* this */
            aload 3 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperationAllowed:(Lorg/hibernate/Session;)V
         1: .line 740
            aload 3 /* session */
            aload 1
            aload 2
            invokeinterface org.hibernate.Session.persist:(Ljava/lang/String;Ljava/lang/Object;)V
         2: .line 741
            aconst_null
            areturn
        end local 3 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    3     3  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.lang.Object lambda$21(java.lang.Object, org.hibernate.Session);
    descriptor: (Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 2 // org.hibernate.Session session
         0: .line 749
            aload 0 /* this */
            aload 2 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperationAllowed:(Lorg/hibernate/Session;)V
         1: .line 750
            aload 2 /* session */
            aload 1
            invokeinterface org.hibernate.Session.merge:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     2  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.lang.Object lambda$22(java.lang.String, java.lang.Object, org.hibernate.Session);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 3 // org.hibernate.Session session
         0: .line 758
            aload 0 /* this */
            aload 3 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperationAllowed:(Lorg/hibernate/Session;)V
         1: .line 759
            aload 3 /* session */
            aload 1
            aload 2
            invokeinterface org.hibernate.Session.merge:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 3 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    2     3  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.lang.Object lambda$23(org.hibernate.LockMode, java.lang.Object, org.hibernate.Session);
    descriptor: (Lorg/hibernate/LockMode;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 3 // org.hibernate.Session session
         0: .line 771
            aload 0 /* this */
            aload 3 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperationAllowed:(Lorg/hibernate/Session;)V
         1: .line 772
            aload 1
            ifnull 3
         2: .line 773
            aload 3 /* session */
            new org.hibernate.LockOptions
            dup
            aload 1
            invokespecial org.hibernate.LockOptions.<init>:(Lorg/hibernate/LockMode;)V
            invokeinterface org.hibernate.Session.buildLockRequest:(Lorg/hibernate/LockOptions;)Lorg/hibernate/Session$LockRequest;
            aload 2
            invokeinterface org.hibernate.Session$LockRequest.lock:(Ljava/lang/Object;)V
         3: .line 775
      StackMap locals:
      StackMap stack:
            aload 3 /* session */
            aload 2
            invokeinterface org.hibernate.Session.delete:(Ljava/lang/Object;)V
         4: .line 776
            aconst_null
            areturn
        end local 3 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    5     3  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.lang.Object lambda$24(org.hibernate.LockMode, java.lang.String, java.lang.Object, org.hibernate.Session);
    descriptor: (Lorg/hibernate/LockMode;Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 4 // org.hibernate.Session session
         0: .line 790
            aload 0 /* this */
            aload 4 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperationAllowed:(Lorg/hibernate/Session;)V
         1: .line 791
            aload 1
            ifnull 3
         2: .line 792
            aload 4 /* session */
            new org.hibernate.LockOptions
            dup
            aload 1
            invokespecial org.hibernate.LockOptions.<init>:(Lorg/hibernate/LockMode;)V
            invokeinterface org.hibernate.Session.buildLockRequest:(Lorg/hibernate/LockOptions;)Lorg/hibernate/Session$LockRequest;
            aload 2
            aload 3
            invokeinterface org.hibernate.Session$LockRequest.lock:(Ljava/lang/String;Ljava/lang/Object;)V
         3: .line 794
      StackMap locals:
      StackMap stack:
            aload 4 /* session */
            aload 2
            aload 3
            invokeinterface org.hibernate.Session.delete:(Ljava/lang/String;Ljava/lang/Object;)V
         4: .line 795
            aconst_null
            areturn
        end local 4 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    5     4  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.lang.Object lambda$25(java.util.Collection, org.hibernate.Session);
    descriptor: (Ljava/util/Collection;Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 2 // org.hibernate.Session session
         0: .line 802
            aload 0 /* this */
            aload 2 /* session */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.checkWriteOperationAllowed:(Lorg/hibernate/Session;)V
         1: .line 803
            aload 1
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 4
      StackMap locals: org.springframework.orm.hibernate5.HibernateTemplate java.util.Collection org.hibernate.Session top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* entity */
        start local 3 // java.lang.Object entity
         3: .line 804
            aload 2 /* session */
            aload 3 /* entity */
            invokeinterface org.hibernate.Session.delete:(Ljava/lang/Object;)V
        end local 3 // java.lang.Object entity
         4: .line 803
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 806
            aconst_null
            areturn
        end local 2 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    6     2  session  Lorg/hibernate/Session;
            3    4     3   entity  Ljava/lang/Object;
    Exceptions:
      throws org.hibernate.HibernateException

  private static java.lang.Object lambda$26(org.hibernate.Session);
    descriptor: (Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.Session session
         0: .line 813
            aload 0 /* session */
            invokeinterface org.hibernate.Session.flush:()V
         1: .line 814
            aconst_null
            areturn
        end local 0 // org.hibernate.Session session
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private static java.lang.Object lambda$27(org.hibernate.Session);
    descriptor: (Lorg/hibernate/Session;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.Session session
         0: .line 821
            aload 0 /* session */
            invokeinterface org.hibernate.Session.clear:()V
         1: .line 822
            aconst_null
            areturn
        end local 0 // org.hibernate.Session session
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0  session  Lorg/hibernate/Session;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.util.List lambda$28(org.hibernate.criterion.DetachedCriteria, int, int, org.hibernate.Session);
    descriptor: (Lorg/hibernate/criterion/DetachedCriteria;IILorg/hibernate/Session;)Ljava/util/List;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=6, args_size=5
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 4 // org.hibernate.Session session
         0: .line 843
            aload 1
            aload 4 /* session */
            invokevirtual org.hibernate.criterion.DetachedCriteria.getExecutableCriteria:(Lorg/hibernate/Session;)Lorg/hibernate/Criteria;
            astore 5 /* executableCriteria */
        start local 5 // org.hibernate.Criteria executableCriteria
         1: .line 844
            aload 0 /* this */
            aload 5 /* executableCriteria */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.prepareCriteria:(Lorg/hibernate/Criteria;)V
         2: .line 845
            iload 2
            iflt 4
         3: .line 846
            aload 5 /* executableCriteria */
            iload 2
            invokeinterface org.hibernate.Criteria.setFirstResult:(I)Lorg/hibernate/Criteria;
            pop
         4: .line 848
      StackMap locals: org.hibernate.Criteria
      StackMap stack:
            iload 3
            ifle 6
         5: .line 849
            aload 5 /* executableCriteria */
            iload 3
            invokeinterface org.hibernate.Criteria.setMaxResults:(I)Lorg/hibernate/Criteria;
            pop
         6: .line 851
      StackMap locals:
      StackMap stack:
            aload 5 /* executableCriteria */
            invokeinterface org.hibernate.Criteria.list:()Ljava/util/List;
            areturn
        end local 5 // org.hibernate.Criteria executableCriteria
        end local 4 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    7     0                this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    7     4             session  Lorg/hibernate/Session;
            1    7     5  executableCriteria  Lorg/hibernate/Criteria;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.util.List lambda$29(java.lang.String, java.lang.Object, int, int, org.hibernate.Session);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;IILorg/hibernate/Session;)Ljava/util/List;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=7, args_size=6
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 5 // org.hibernate.Session session
         0: .line 878
            aload 1
            ifnull 2
         1: .line 879
            aload 5 /* session */
            aload 1
            invokeinterface org.hibernate.Session.createCriteria:(Ljava/lang/String;)Lorg/hibernate/Criteria;
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 5 /* session */
            aload 2
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokeinterface org.hibernate.Session.createCriteria:(Ljava/lang/Class;)Lorg/hibernate/Criteria;
         3: .line 878
      StackMap locals:
      StackMap stack: org.hibernate.Criteria
            astore 6 /* executableCriteria */
        start local 6 // org.hibernate.Criteria executableCriteria
         4: .line 880
            aload 6 /* executableCriteria */
            aload 2
            invokestatic org.hibernate.criterion.Example.create:(Ljava/lang/Object;)Lorg/hibernate/criterion/Example;
            invokeinterface org.hibernate.Criteria.add:(Lorg/hibernate/criterion/Criterion;)Lorg/hibernate/Criteria;
            pop
         5: .line 881
            aload 0 /* this */
            aload 6 /* executableCriteria */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.prepareCriteria:(Lorg/hibernate/Criteria;)V
         6: .line 882
            iload 3
            iflt 8
         7: .line 883
            aload 6 /* executableCriteria */
            iload 3
            invokeinterface org.hibernate.Criteria.setFirstResult:(I)Lorg/hibernate/Criteria;
            pop
         8: .line 885
      StackMap locals: org.hibernate.Criteria
      StackMap stack:
            iload 4
            ifle 10
         9: .line 886
            aload 6 /* executableCriteria */
            iload 4
            invokeinterface org.hibernate.Criteria.setMaxResults:(I)Lorg/hibernate/Criteria;
            pop
        10: .line 888
      StackMap locals:
      StackMap stack:
            aload 6 /* executableCriteria */
            invokeinterface org.hibernate.Criteria.list:()Ljava/util/List;
            areturn
        end local 6 // org.hibernate.Criteria executableCriteria
        end local 5 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   11     0                this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0   11     5             session  Lorg/hibernate/Session;
            4   11     6  executableCriteria  Lorg/hibernate/Criteria;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.util.List lambda$30(java.lang.String, java.lang.Object[], org.hibernate.Session);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/util/List;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 3 // org.hibernate.Session session
         0: .line 903
            getstatic org.springframework.orm.hibernate5.HibernateTemplate.createQueryMethod:Ljava/lang/reflect/Method;
            aload 3 /* session */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1
            aastore
            invokestatic org.springframework.util.ReflectionUtils.invokeMethod:(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
         1: .line 902
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.queryObject:(Ljava/lang/Object;)Lorg/hibernate/Query;
            astore 4 /* queryObject */
        start local 4 // org.hibernate.Query queryObject
         2: .line 904
            aload 0 /* this */
            aload 4 /* queryObject */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.prepareQuery:(Lorg/hibernate/Query;)V
         3: .line 905
            aload 2
            ifnull 9
         4: .line 906
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 8
         6: .line 907
      StackMap locals: org.hibernate.Query int
      StackMap stack:
            aload 4 /* queryObject */
            iload 5 /* i */
            aload 2
            iload 5 /* i */
            aaload
            invokeinterface org.hibernate.Query.setParameter:(ILjava/lang/Object;)Lorg/hibernate/Query;
            pop
         7: .line 906
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 5 /* i */
            aload 2
            arraylength
            if_icmplt 6
        end local 5 // int i
         9: .line 910
      StackMap locals:
      StackMap stack:
            aload 4 /* queryObject */
            invokeinterface org.hibernate.Query.list:()Ljava/util/List;
            areturn
        end local 4 // org.hibernate.Query queryObject
        end local 3 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0   10     3      session  Lorg/hibernate/Session;
            2   10     4  queryObject  Lorg/hibernate/Query;
            5    9     5            i  I
    Exceptions:
      throws org.hibernate.HibernateException

  private java.util.List lambda$31(java.lang.String, java.lang.Object[], java.lang.String[], org.hibernate.Session);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;Lorg/hibernate/Session;)Ljava/util/List;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=7, args_size=5
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 4 // org.hibernate.Session session
         0: .line 933
            getstatic org.springframework.orm.hibernate5.HibernateTemplate.createQueryMethod:Ljava/lang/reflect/Method;
            aload 4 /* session */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1
            aastore
            invokestatic org.springframework.util.ReflectionUtils.invokeMethod:(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
         1: .line 932
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.queryObject:(Ljava/lang/Object;)Lorg/hibernate/Query;
            astore 5 /* queryObject */
        start local 5 // org.hibernate.Query queryObject
         2: .line 934
            aload 0 /* this */
            aload 5 /* queryObject */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.prepareQuery:(Lorg/hibernate/Query;)V
         3: .line 935
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         4: goto 7
         5: .line 936
      StackMap locals: org.hibernate.Query int
      StackMap stack:
            aload 0 /* this */
            aload 5 /* queryObject */
            aload 3
            iload 6 /* i */
            aaload
            aload 2
            iload 6 /* i */
            aaload
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.applyNamedParameterToQuery:(Lorg/hibernate/Query;Ljava/lang/String;Ljava/lang/Object;)V
         6: .line 935
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 6 /* i */
            aload 2
            arraylength
            if_icmplt 5
        end local 6 // int i
         8: .line 938
            aload 5 /* queryObject */
            invokeinterface org.hibernate.Query.list:()Ljava/util/List;
            areturn
        end local 5 // org.hibernate.Query queryObject
        end local 4 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    9     4      session  Lorg/hibernate/Session;
            2    9     5  queryObject  Lorg/hibernate/Query;
            4    8     6            i  I
    Exceptions:
      throws org.hibernate.HibernateException

  private java.util.List lambda$32(java.lang.String, java.lang.Object, org.hibernate.Session);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/util/List;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 3 // org.hibernate.Session session
         0: .line 950
            getstatic org.springframework.orm.hibernate5.HibernateTemplate.createQueryMethod:Ljava/lang/reflect/Method;
            aload 3 /* session */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1
            aastore
            invokestatic org.springframework.util.ReflectionUtils.invokeMethod:(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
         1: .line 949
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.queryObject:(Ljava/lang/Object;)Lorg/hibernate/Query;
            astore 4 /* queryObject */
        start local 4 // org.hibernate.Query queryObject
         2: .line 951
            aload 0 /* this */
            aload 4 /* queryObject */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.prepareQuery:(Lorg/hibernate/Query;)V
         3: .line 952
            aload 4 /* queryObject */
            aload 2
            invokeinterface org.hibernate.Query.setProperties:(Ljava/lang/Object;)Lorg/hibernate/Query;
            pop
         4: .line 953
            aload 4 /* queryObject */
            invokeinterface org.hibernate.Query.list:()Ljava/util/List;
            areturn
        end local 4 // org.hibernate.Query queryObject
        end local 3 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    5     3      session  Lorg/hibernate/Session;
            2    5     4  queryObject  Lorg/hibernate/Query;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.util.List lambda$33(java.lang.String, java.lang.Object[], org.hibernate.Session);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/util/List;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 3 // org.hibernate.Session session
         0: .line 968
            getstatic org.springframework.orm.hibernate5.HibernateTemplate.getNamedQueryMethod:Ljava/lang/reflect/Method;
            aload 3 /* session */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1
            aastore
            invokestatic org.springframework.util.ReflectionUtils.invokeMethod:(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
         1: .line 967
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.queryObject:(Ljava/lang/Object;)Lorg/hibernate/Query;
            astore 4 /* queryObject */
        start local 4 // org.hibernate.Query queryObject
         2: .line 969
            aload 0 /* this */
            aload 4 /* queryObject */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.prepareQuery:(Lorg/hibernate/Query;)V
         3: .line 970
            aload 2
            ifnull 9
         4: .line 971
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 8
         6: .line 972
      StackMap locals: org.hibernate.Query int
      StackMap stack:
            aload 4 /* queryObject */
            iload 5 /* i */
            aload 2
            iload 5 /* i */
            aaload
            invokeinterface org.hibernate.Query.setParameter:(ILjava/lang/Object;)Lorg/hibernate/Query;
            pop
         7: .line 971
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 5 /* i */
            aload 2
            arraylength
            if_icmplt 6
        end local 5 // int i
         9: .line 975
      StackMap locals:
      StackMap stack:
            aload 4 /* queryObject */
            invokeinterface org.hibernate.Query.list:()Ljava/util/List;
            areturn
        end local 4 // org.hibernate.Query queryObject
        end local 3 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0   10     3      session  Lorg/hibernate/Session;
            2   10     4  queryObject  Lorg/hibernate/Query;
            5    9     5            i  I
    Exceptions:
      throws org.hibernate.HibernateException

  private java.util.List lambda$34(java.lang.String, java.lang.Object[], java.lang.String[], org.hibernate.Session);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;Lorg/hibernate/Session;)Ljava/util/List;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=7, args_size=5
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 4 // org.hibernate.Session session
         0: .line 999
            getstatic org.springframework.orm.hibernate5.HibernateTemplate.getNamedQueryMethod:Ljava/lang/reflect/Method;
            aload 4 /* session */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1
            aastore
            invokestatic org.springframework.util.ReflectionUtils.invokeMethod:(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.nonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hibernate.Query
         1: .line 998
            astore 5 /* queryObject */
        start local 5 // org.hibernate.Query queryObject
         2: .line 1000
            aload 0 /* this */
            aload 5 /* queryObject */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.prepareQuery:(Lorg/hibernate/Query;)V
         3: .line 1001
            aload 2
            ifnull 9
         4: .line 1002
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         5: goto 8
         6: .line 1003
      StackMap locals: org.hibernate.Query int
      StackMap stack:
            aload 0 /* this */
            aload 5 /* queryObject */
            aload 3
            iload 6 /* i */
            aaload
            aload 2
            iload 6 /* i */
            aaload
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.applyNamedParameterToQuery:(Lorg/hibernate/Query;Ljava/lang/String;Ljava/lang/Object;)V
         7: .line 1002
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 6 /* i */
            aload 2
            arraylength
            if_icmplt 6
        end local 6 // int i
         9: .line 1006
      StackMap locals:
      StackMap stack:
            aload 5 /* queryObject */
            invokeinterface org.hibernate.Query.list:()Ljava/util/List;
            areturn
        end local 5 // org.hibernate.Query queryObject
        end local 4 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0   10     4      session  Lorg/hibernate/Session;
            2   10     5  queryObject  Lorg/hibernate/Query;
            5    9     6            i  I
    Exceptions:
      throws org.hibernate.HibernateException

  private java.util.List lambda$35(java.lang.String, java.lang.Object, org.hibernate.Session);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/util/List;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 3 // org.hibernate.Session session
         0: .line 1018
            getstatic org.springframework.orm.hibernate5.HibernateTemplate.getNamedQueryMethod:Ljava/lang/reflect/Method;
            aload 3 /* session */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1
            aastore
            invokestatic org.springframework.util.ReflectionUtils.invokeMethod:(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
         1: .line 1017
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.queryObject:(Ljava/lang/Object;)Lorg/hibernate/Query;
            astore 4 /* queryObject */
        start local 4 // org.hibernate.Query queryObject
         2: .line 1019
            aload 0 /* this */
            aload 4 /* queryObject */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.prepareQuery:(Lorg/hibernate/Query;)V
         3: .line 1020
            aload 4 /* queryObject */
            aload 2
            invokeinterface org.hibernate.Query.setProperties:(Ljava/lang/Object;)Lorg/hibernate/Query;
            pop
         4: .line 1021
            aload 4 /* queryObject */
            invokeinterface org.hibernate.Query.list:()Ljava/util/List;
            areturn
        end local 4 // org.hibernate.Query queryObject
        end local 3 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0    5     3      session  Lorg/hibernate/Session;
            2    5     4  queryObject  Lorg/hibernate/Query;
    Exceptions:
      throws org.hibernate.HibernateException

  private java.util.Iterator lambda$36(java.lang.String, java.lang.Object[], org.hibernate.Session);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/util/Iterator;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 3 // org.hibernate.Session session
         0: .line 1036
            getstatic org.springframework.orm.hibernate5.HibernateTemplate.createQueryMethod:Ljava/lang/reflect/Method;
            aload 3 /* session */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1
            aastore
            invokestatic org.springframework.util.ReflectionUtils.invokeMethod:(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
         1: .line 1035
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.queryObject:(Ljava/lang/Object;)Lorg/hibernate/Query;
            astore 4 /* queryObject */
        start local 4 // org.hibernate.Query queryObject
         2: .line 1037
            aload 0 /* this */
            aload 4 /* queryObject */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.prepareQuery:(Lorg/hibernate/Query;)V
         3: .line 1038
            aload 2
            ifnull 9
         4: .line 1039
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 8
         6: .line 1040
      StackMap locals: org.hibernate.Query int
      StackMap stack:
            aload 4 /* queryObject */
            iload 5 /* i */
            aload 2
            iload 5 /* i */
            aaload
            invokeinterface org.hibernate.Query.setParameter:(ILjava/lang/Object;)Lorg/hibernate/Query;
            pop
         7: .line 1039
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 5 /* i */
            aload 2
            arraylength
            if_icmplt 6
        end local 5 // int i
         9: .line 1043
      StackMap locals:
      StackMap stack:
            aload 4 /* queryObject */
            invokeinterface org.hibernate.Query.iterate:()Ljava/util/Iterator;
            areturn
        end local 4 // org.hibernate.Query queryObject
        end local 3 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0   10     3      session  Lorg/hibernate/Session;
            2   10     4  queryObject  Lorg/hibernate/Query;
            5    9     5            i  I
    Exceptions:
      throws org.hibernate.HibernateException

  private java.lang.Integer lambda$37(java.lang.String, java.lang.Object[], org.hibernate.Session);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;Lorg/hibernate/Session;)Ljava/lang/Integer;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
        start local 3 // org.hibernate.Session session
         0: .line 1064
            getstatic org.springframework.orm.hibernate5.HibernateTemplate.createQueryMethod:Ljava/lang/reflect/Method;
            aload 3 /* session */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1
            aastore
            invokestatic org.springframework.util.ReflectionUtils.invokeMethod:(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
         1: .line 1063
            invokestatic org.springframework.orm.hibernate5.HibernateTemplate.queryObject:(Ljava/lang/Object;)Lorg/hibernate/Query;
            astore 4 /* queryObject */
        start local 4 // org.hibernate.Query queryObject
         2: .line 1065
            aload 0 /* this */
            aload 4 /* queryObject */
            invokevirtual org.springframework.orm.hibernate5.HibernateTemplate.prepareQuery:(Lorg/hibernate/Query;)V
         3: .line 1066
            aload 2
            ifnull 9
         4: .line 1067
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 8
         6: .line 1068
      StackMap locals: org.hibernate.Query int
      StackMap stack:
            aload 4 /* queryObject */
            iload 5 /* i */
            aload 2
            iload 5 /* i */
            aaload
            invokeinterface org.hibernate.Query.setParameter:(ILjava/lang/Object;)Lorg/hibernate/Query;
            pop
         7: .line 1067
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 5 /* i */
            aload 2
            arraylength
            if_icmplt 6
        end local 5 // int i
         9: .line 1071
      StackMap locals:
      StackMap stack:
            aload 4 /* queryObject */
            invokeinterface org.hibernate.Query.executeUpdate:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            areturn
        end local 4 // org.hibernate.Query queryObject
        end local 3 // org.hibernate.Session session
        end local 0 // org.springframework.orm.hibernate5.HibernateTemplate this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lorg/springframework/orm/hibernate5/HibernateTemplate;
            0   10     3      session  Lorg/hibernate/Session;
            2   10     4  queryObject  Lorg/hibernate/Query;
            5    9     5            i  I
    Exceptions:
      throws org.hibernate.HibernateException
}
SourceFile: "HibernateTemplate.java"
NestMembers:
  org.springframework.orm.hibernate5.HibernateTemplate$CloseSuppressingInvocationHandler
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract LockRequest = org.hibernate.Session$LockRequest of org.hibernate.Session
  private CloseSuppressingInvocationHandler = org.springframework.orm.hibernate5.HibernateTemplate$CloseSuppressingInvocationHandler of org.springframework.orm.hibernate5.HibernateTemplate