org.springframework.orm.hibernate5

Interface HibernateCallback<T>

  • Type Parameters:
    T - the result type
    Functional Interface:
    This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.


    @FunctionalInterface
    public interface HibernateCallback<T>
    Callback interface for Hibernate code. To be used with HibernateTemplate's execution methods, often as anonymous classes within a method implementation. A typical implementation will call Session.load/find/update to perform some operations on persistent objects.
    Since:
    4.2
    Author:
    Juergen Hoeller
    See Also:
    HibernateTemplate, HibernateTransactionManager
    • Method Detail

      • doInHibernate

        @Nullable
        T doInHibernate(Session session)
                           throws HibernateException
        Gets called by HibernateTemplate.execute with an active Hibernate Session. Does not need to care about activating or closing the Session, or handling transactions.

        Allows for returning a result object created within the callback, i.e. a domain object or a collection of domain objects. A thrown custom RuntimeException is treated as an application exception: It gets propagated to the caller of the template.

        Parameters:
        session - active Hibernate session
        Returns:
        a result object, or null if none
        Throws:
        HibernateException - if thrown by the Hibernate API
        See Also:
        HibernateTemplate.execute(org.springframework.orm.hibernate5.HibernateCallback<T>)