Interface HibernateOperations

All Known Implementing Classes:
HibernateTemplate

public interface HibernateOperations
Interface that specifies a common set of Hibernate operations as well as a general execute(org.springframework.orm.hibernate5.HibernateCallback<T>) method for Session-based lambda expressions. Implemented by HibernateTemplate. Not often used, but a useful option to enhance testability, as it can easily be mocked or stubbed.

Defines HibernateTemplate's data access methods that mirror various Session methods. Users are strongly encouraged to read the Hibernate Session javadocs for details on the semantics of those methods.

A deprecation note: While HibernateTemplate and this operations interface are being kept around for backwards compatibility in terms of the data access implementation style in Spring applications, we strongly recommend the use of native Session access code for non-trivial interactions. This in particular affects parameterized queries where - on Java 8+ - a custom HibernateCallback lambda code block with createQuery and several setParameter calls on the Query interface is an elegant solution, to be executed via the general execute(org.springframework.orm.hibernate5.HibernateCallback<T>) method. All such operations which benefit from a lambda variant have been marked as deprecated on this interface.

A Hibernate compatibility note: HibernateTemplate and the operations on this interface generally aim to be applicable across all Hibernate versions. In terms of binary compatibility, Spring ships a variant for each major generation of Hibernate (in the present case: Hibernate ORM 5.x). However, due to refactorings and removals in Hibernate ORM 5.3, some variants - in particular legacy positional parameters starting from index 0 - do not work anymore. All affected operations are marked as deprecated; please replace them with the general execute(org.springframework.orm.hibernate5.HibernateCallback<T>) method and custom lambda blocks creating the queries, ideally setting named parameters through Query. Please be aware that deprecated operations are known to work with Hibernate ORM 5.2 but may not work with Hibernate ORM 5.3 and higher anymore.

Since:
4.2
Author:
Juergen Hoeller
See Also:
  • Method Details

    • execute

      @Nullable <T> T execute(HibernateCallback<T> action) throws org.springframework.dao.DataAccessException
      Execute the action specified by the given action object within a Session.

      Application exceptions thrown by the action object get propagated to the caller (can only be unchecked). Hibernate exceptions are transformed into appropriate DAO ones. Allows for returning a result object, that is a domain object or a collection of domain objects.

      Note: Callback code is not supposed to handle transactions itself! Use an appropriate transaction manager like HibernateTransactionManager. Generally, callback code must not touch any Session lifecycle methods, like close, disconnect, or reconnect, to let the template do its work.

      Parameters:
      action - callback object that specifies the Hibernate action
      Returns:
      a result object returned by the action, or null
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • get

      @Nullable <T> T get(Class<T> entityClass, Serializable id) throws org.springframework.dao.DataAccessException
      Return the persistent instance of the given entity class with the given identifier, or null if not found.

      This method is a thin wrapper around Session.get(Class, Serializable) for convenience. For an explanation of the exact semantics of this method, please do refer to the Hibernate API documentation in the first instance.

      Parameters:
      entityClass - a persistent class
      id - the identifier of the persistent instance
      Returns:
      the persistent instance, or null if not found
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • get

      @Nullable <T> T get(Class<T> entityClass, Serializable id, LockMode lockMode) throws org.springframework.dao.DataAccessException
      Return the persistent instance of the given entity class with the given identifier, or null if not found.

      Obtains the specified lock mode if the instance exists.

      This method is a thin wrapper around Session.get(Class, Serializable, LockMode) for convenience. For an explanation of the exact semantics of this method, please do refer to the Hibernate API documentation in the first instance.

      Parameters:
      entityClass - a persistent class
      id - the identifier of the persistent instance
      lockMode - the lock mode to obtain
      Returns:
      the persistent instance, or null if not found
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • get

      @Nullable Object get(String entityName, Serializable id) throws org.springframework.dao.DataAccessException
      Return the persistent instance of the given entity class with the given identifier, or null if not found.

      This method is a thin wrapper around Session.get(String, Serializable) for convenience. For an explanation of the exact semantics of this method, please do refer to the Hibernate API documentation in the first instance.

      Parameters:
      entityName - the name of the persistent entity
      id - the identifier of the persistent instance
      Returns:
      the persistent instance, or null if not found
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • get

      @Nullable Object get(String entityName, Serializable id, LockMode lockMode) throws org.springframework.dao.DataAccessException
      Return the persistent instance of the given entity class with the given identifier, or null if not found. Obtains the specified lock mode if the instance exists.

      This method is a thin wrapper around Session.get(String, Serializable, LockMode) for convenience. For an explanation of the exact semantics of this method, please do refer to the Hibernate API documentation in the first instance.

      Parameters:
      entityName - the name of the persistent entity
      id - the identifier of the persistent instance
      lockMode - the lock mode to obtain
      Returns:
      the persistent instance, or null if not found
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • load

      <T> T load(Class<T> entityClass, Serializable id) throws org.springframework.dao.DataAccessException
      Return the persistent instance of the given entity class with the given identifier, throwing an exception if not found.

      This method is a thin wrapper around Session.load(Class, Serializable) for convenience. For an explanation of the exact semantics of this method, please do refer to the Hibernate API documentation in the first instance.

      Parameters:
      entityClass - a persistent class
      id - the identifier of the persistent instance
      Returns:
      the persistent instance
      Throws:
      ObjectRetrievalFailureException - if not found
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • load

      <T> T load(Class<T> entityClass, Serializable id, LockMode lockMode) throws org.springframework.dao.DataAccessException
      Return the persistent instance of the given entity class with the given identifier, throwing an exception if not found. Obtains the specified lock mode if the instance exists.

      This method is a thin wrapper around Session.load(Class, Serializable, LockMode) for convenience. For an explanation of the exact semantics of this method, please do refer to the Hibernate API documentation in the first instance.

      Parameters:
      entityClass - a persistent class
      id - the identifier of the persistent instance
      lockMode - the lock mode to obtain
      Returns:
      the persistent instance
      Throws:
      ObjectRetrievalFailureException - if not found
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • load

      Object load(String entityName, Serializable id) throws org.springframework.dao.DataAccessException
      Return the persistent instance of the given entity class with the given identifier, throwing an exception if not found.

      This method is a thin wrapper around Session.load(String, Serializable) for convenience. For an explanation of the exact semantics of this method, please do refer to the Hibernate API documentation in the first instance.

      Parameters:
      entityName - the name of the persistent entity
      id - the identifier of the persistent instance
      Returns:
      the persistent instance
      Throws:
      ObjectRetrievalFailureException - if not found
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • load

      Object load(String entityName, Serializable id, LockMode lockMode) throws org.springframework.dao.DataAccessException
      Return the persistent instance of the given entity class with the given identifier, throwing an exception if not found.

      Obtains the specified lock mode if the instance exists.

      This method is a thin wrapper around Session.load(String, Serializable, LockMode) for convenience. For an explanation of the exact semantics of this method, please do refer to the Hibernate API documentation in the first instance.

      Parameters:
      entityName - the name of the persistent entity
      id - the identifier of the persistent instance
      lockMode - the lock mode to obtain
      Returns:
      the persistent instance
      Throws:
      ObjectRetrievalFailureException - if not found
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • loadAll

      <T> List<T> loadAll(Class<T> entityClass) throws org.springframework.dao.DataAccessException
      Return all persistent instances of the given entity class. Note: Use queries or criteria for retrieving a specific subset.
      Parameters:
      entityClass - a persistent class
      Returns:
      a List containing 0 or more persistent instances
      Throws:
      org.springframework.dao.DataAccessException - if there is a Hibernate error
      See Also:
    • load

      void load(Object entity, Serializable id) throws org.springframework.dao.DataAccessException
      Load the persistent instance with the given identifier into the given object, throwing an exception if not found.

      This method is a thin wrapper around Session.load(Object, Serializable) for convenience. For an explanation of the exact semantics of this method, please do refer to the Hibernate API documentation in the first instance.

      Parameters:
      entity - the object (of the target class) to load into
      id - the identifier of the persistent instance
      Throws:
      ObjectRetrievalFailureException - if not found
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • refresh

      void refresh(Object entity) throws org.springframework.dao.DataAccessException
      Re-read the state of the given persistent instance.
      Parameters:
      entity - the persistent instance to re-read
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • refresh

      void refresh(Object entity, LockMode lockMode) throws org.springframework.dao.DataAccessException
      Re-read the state of the given persistent instance. Obtains the specified lock mode for the instance.
      Parameters:
      entity - the persistent instance to re-read
      lockMode - the lock mode to obtain
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • contains

      boolean contains(Object entity) throws org.springframework.dao.DataAccessException
      Check whether the given object is in the Session cache.
      Parameters:
      entity - the persistence instance to check
      Returns:
      whether the given object is in the Session cache
      Throws:
      org.springframework.dao.DataAccessException - if there is a Hibernate error
      See Also:
    • evict

      void evict(Object entity) throws org.springframework.dao.DataAccessException
      Remove the given object from the Session cache.
      Parameters:
      entity - the persistent instance to evict
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • initialize

      void initialize(Object proxy) throws org.springframework.dao.DataAccessException
      Force initialization of a Hibernate proxy or persistent collection.
      Parameters:
      proxy - a proxy for a persistent object or a persistent collection
      Throws:
      org.springframework.dao.DataAccessException - if we can't initialize the proxy, for example because it is not associated with an active Session
      See Also:
    • enableFilter

      Filter enableFilter(String filterName) throws IllegalStateException
      Return an enabled Hibernate Filter for the given filter name. The returned Filter instance can be used to set filter parameters.
      Parameters:
      filterName - the name of the filter
      Returns:
      the enabled Hibernate Filter (either already enabled or enabled on the fly by this operation)
      Throws:
      IllegalStateException - if we are not running within a transactional Session (in which case this operation does not make sense)
    • lock

      void lock(Object entity, LockMode lockMode) throws org.springframework.dao.DataAccessException
      Obtain the specified lock level upon the given object, implicitly checking whether the corresponding database entry still exists.
      Parameters:
      entity - the persistent instance to lock
      lockMode - the lock mode to obtain
      Throws:
      ObjectOptimisticLockingFailureException - if not found
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • lock

      void lock(String entityName, Object entity, LockMode lockMode) throws org.springframework.dao.DataAccessException
      Obtain the specified lock level upon the given object, implicitly checking whether the corresponding database entry still exists.
      Parameters:
      entityName - the name of the persistent entity
      entity - the persistent instance to lock
      lockMode - the lock mode to obtain
      Throws:
      ObjectOptimisticLockingFailureException - if not found
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • save

      Serializable save(Object entity) throws org.springframework.dao.DataAccessException
      Persist the given transient instance.
      Parameters:
      entity - the transient instance to persist
      Returns:
      the generated identifier
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • save

      Serializable save(String entityName, Object entity) throws org.springframework.dao.DataAccessException
      Persist the given transient instance.
      Parameters:
      entityName - the name of the persistent entity
      entity - the transient instance to persist
      Returns:
      the generated identifier
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • update

      void update(Object entity) throws org.springframework.dao.DataAccessException
      Update the given persistent instance, associating it with the current Hibernate Session.
      Parameters:
      entity - the persistent instance to update
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • update

      void update(Object entity, LockMode lockMode) throws org.springframework.dao.DataAccessException
      Update the given persistent instance, associating it with the current Hibernate Session.

      Obtains the specified lock mode if the instance exists, implicitly checking whether the corresponding database entry still exists.

      Parameters:
      entity - the persistent instance to update
      lockMode - the lock mode to obtain
      Throws:
      ObjectOptimisticLockingFailureException - if not found
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • update

      void update(String entityName, Object entity) throws org.springframework.dao.DataAccessException
      Update the given persistent instance, associating it with the current Hibernate Session.
      Parameters:
      entityName - the name of the persistent entity
      entity - the persistent instance to update
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • update

      void update(String entityName, Object entity, LockMode lockMode) throws org.springframework.dao.DataAccessException
      Update the given persistent instance, associating it with the current Hibernate Session.

      Obtains the specified lock mode if the instance exists, implicitly checking whether the corresponding database entry still exists.

      Parameters:
      entityName - the name of the persistent entity
      entity - the persistent instance to update
      lockMode - the lock mode to obtain
      Throws:
      ObjectOptimisticLockingFailureException - if not found
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • saveOrUpdate

      void saveOrUpdate(Object entity) throws org.springframework.dao.DataAccessException
      Save or update the given persistent instance, according to its id (matching the configured "unsaved-value"?). Associates the instance with the current Hibernate Session.
      Parameters:
      entity - the persistent instance to save or update (to be associated with the Hibernate Session)
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • saveOrUpdate

      void saveOrUpdate(String entityName, Object entity) throws org.springframework.dao.DataAccessException
      Save or update the given persistent instance, according to its id (matching the configured "unsaved-value"?). Associates the instance with the current Hibernate Session.
      Parameters:
      entityName - the name of the persistent entity
      entity - the persistent instance to save or update (to be associated with the Hibernate Session)
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • replicate

      void replicate(Object entity, ReplicationMode replicationMode) throws org.springframework.dao.DataAccessException
      Persist the state of the given detached instance according to the given replication mode, reusing the current identifier value.
      Parameters:
      entity - the persistent object to replicate
      replicationMode - the Hibernate ReplicationMode
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • replicate

      void replicate(String entityName, Object entity, ReplicationMode replicationMode) throws org.springframework.dao.DataAccessException
      Persist the state of the given detached instance according to the given replication mode, reusing the current identifier value.
      Parameters:
      entityName - the name of the persistent entity
      entity - the persistent object to replicate
      replicationMode - the Hibernate ReplicationMode
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • persist

      void persist(Object entity) throws org.springframework.dao.DataAccessException
      Persist the given transient instance. Follows JSR-220 semantics.

      Similar to save, associating the given object with the current Hibernate Session.

      Parameters:
      entity - the persistent instance to persist
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • persist

      void persist(String entityName, Object entity) throws org.springframework.dao.DataAccessException
      Persist the given transient instance. Follows JSR-220 semantics.

      Similar to save, associating the given object with the current Hibernate Session.

      Parameters:
      entityName - the name of the persistent entity
      entity - the persistent instance to persist
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • merge

      <T> T merge(T entity) throws org.springframework.dao.DataAccessException
      Copy the state of the given object onto the persistent object with the same identifier. Follows JSR-220 semantics.

      Similar to saveOrUpdate, but never associates the given object with the current Hibernate Session. In case of a new entity, the state will be copied over as well.

      Note that merge will not update the identifiers in the passed-in object graph (in contrast to TopLink)! Consider registering Spring's IdTransferringMergeEventListener if you would like to have newly assigned ids transferred to the original object graph too.

      Parameters:
      entity - the object to merge with the corresponding persistence instance
      Returns:
      the updated, registered persistent instance
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • merge

      <T> T merge(String entityName, T entity) throws org.springframework.dao.DataAccessException
      Copy the state of the given object onto the persistent object with the same identifier. Follows JSR-220 semantics.

      Similar to saveOrUpdate, but never associates the given object with the current Hibernate Session. In the case of a new entity, the state will be copied over as well.

      Note that merge will not update the identifiers in the passed-in object graph (in contrast to TopLink)! Consider registering Spring's IdTransferringMergeEventListener if you would like to have newly assigned ids transferred to the original object graph too.

      Parameters:
      entityName - the name of the persistent entity
      entity - the object to merge with the corresponding persistence instance
      Returns:
      the updated, registered persistent instance
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • delete

      void delete(Object entity) throws org.springframework.dao.DataAccessException
      Delete the given persistent instance.
      Parameters:
      entity - the persistent instance to delete
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • delete

      void delete(Object entity, LockMode lockMode) throws org.springframework.dao.DataAccessException
      Delete the given persistent instance.

      Obtains the specified lock mode if the instance exists, implicitly checking whether the corresponding database entry still exists.

      Parameters:
      entity - the persistent instance to delete
      lockMode - the lock mode to obtain
      Throws:
      ObjectOptimisticLockingFailureException - if not found
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • delete

      void delete(String entityName, Object entity) throws org.springframework.dao.DataAccessException
      Delete the given persistent instance.
      Parameters:
      entityName - the name of the persistent entity
      entity - the persistent instance to delete
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • delete

      void delete(String entityName, Object entity, LockMode lockMode) throws org.springframework.dao.DataAccessException
      Delete the given persistent instance.

      Obtains the specified lock mode if the instance exists, implicitly checking whether the corresponding database entry still exists.

      Parameters:
      entityName - the name of the persistent entity
      entity - the persistent instance to delete
      lockMode - the lock mode to obtain
      Throws:
      ObjectOptimisticLockingFailureException - if not found
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • deleteAll

      void deleteAll(Collection<?> entities) throws org.springframework.dao.DataAccessException
      Delete all given persistent instances.

      This can be combined with any of the find methods to delete by query in two lines of code.

      Parameters:
      entities - the persistent instances to delete
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • flush

      void flush() throws org.springframework.dao.DataAccessException
      Flush all pending saves, updates and deletes to the database.

      Only invoke this for selective eager flushing, for example when JDBC code needs to see certain changes within the same transaction. Else, it is preferable to rely on auto-flushing at transaction completion.

      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • clear

      void clear() throws org.springframework.dao.DataAccessException
      Remove all objects from the Session cache, and cancel all pending saves, updates and deletes.
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • findByCriteria

      List<?> findByCriteria(DetachedCriteria criteria) throws org.springframework.dao.DataAccessException
      Execute a query based on a given Hibernate criteria object.
      Parameters:
      criteria - the detached Hibernate criteria object. Note: Do not reuse criteria objects! They need to recreated per execution, due to the suboptimal design of Hibernate's criteria facility.
      Returns:
      a List containing 0 or more persistent instances
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • findByCriteria

      List<?> findByCriteria(DetachedCriteria criteria, int firstResult, int maxResults) throws org.springframework.dao.DataAccessException
      Execute a query based on the given Hibernate criteria object.
      Parameters:
      criteria - the detached Hibernate criteria object. Note: Do not reuse criteria objects! They need to recreated per execution, due to the suboptimal design of Hibernate's criteria facility.
      firstResult - the index of the first result object to be retrieved (numbered from 0)
      maxResults - the maximum number of result objects to retrieve (or <=0 for no limit)
      Returns:
      a List containing 0 or more persistent instances
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • findByExample

      <T> List<T> findByExample(T exampleEntity) throws org.springframework.dao.DataAccessException
      Execute a query based on the given example entity object.
      Parameters:
      exampleEntity - an instance of the desired entity, serving as example for "query-by-example"
      Returns:
      a List containing 0 or more persistent instances
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • findByExample

      <T> List<T> findByExample(String entityName, T exampleEntity) throws org.springframework.dao.DataAccessException
      Execute a query based on the given example entity object.
      Parameters:
      entityName - the name of the persistent entity
      exampleEntity - an instance of the desired entity, serving as example for "query-by-example"
      Returns:
      a List containing 0 or more persistent instances
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • findByExample

      <T> List<T> findByExample(T exampleEntity, int firstResult, int maxResults) throws org.springframework.dao.DataAccessException
      Execute a query based on a given example entity object.
      Parameters:
      exampleEntity - an instance of the desired entity, serving as example for "query-by-example"
      firstResult - the index of the first result object to be retrieved (numbered from 0)
      maxResults - the maximum number of result objects to retrieve (or <=0 for no limit)
      Returns:
      a List containing 0 or more persistent instances
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • findByExample

      <T> List<T> findByExample(String entityName, T exampleEntity, int firstResult, int maxResults) throws org.springframework.dao.DataAccessException
      Execute a query based on a given example entity object.
      Parameters:
      entityName - the name of the persistent entity
      exampleEntity - an instance of the desired entity, serving as example for "query-by-example"
      firstResult - the index of the first result object to be retrieved (numbered from 0)
      maxResults - the maximum number of result objects to retrieve (or <=0 for no limit)
      Returns:
      a List containing 0 or more persistent instances
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • find

      @Deprecated List<?> find(String queryString, Object... values) throws org.springframework.dao.DataAccessException
      Deprecated.
      as of 5.0.4, in favor of a custom HibernateCallback lambda code block passed to the general execute(org.springframework.orm.hibernate5.HibernateCallback<T>) method
      Execute an HQL query, binding a number of values to "?" parameters in the query string.
      Parameters:
      queryString - a query expressed in Hibernate's query language
      values - the values of the parameters
      Returns:
      a List containing the results of the query execution
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • findByNamedParam

      @Deprecated List<?> findByNamedParam(String queryString, String paramName, Object value) throws org.springframework.dao.DataAccessException
      Deprecated.
      as of 5.0.4, in favor of a custom HibernateCallback lambda code block passed to the general execute(org.springframework.orm.hibernate5.HibernateCallback<T>) method
      Execute an HQL query, binding one value to a ":" named parameter in the query string.
      Parameters:
      queryString - a query expressed in Hibernate's query language
      paramName - the name of the parameter
      value - the value of the parameter
      Returns:
      a List containing the results of the query execution
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • findByNamedParam

      @Deprecated List<?> findByNamedParam(String queryString, String[] paramNames, Object[] values) throws org.springframework.dao.DataAccessException
      Deprecated.
      as of 5.0.4, in favor of a custom HibernateCallback lambda code block passed to the general execute(org.springframework.orm.hibernate5.HibernateCallback<T>) method
      Execute an HQL query, binding a number of values to ":" named parameters in the query string.
      Parameters:
      queryString - a query expressed in Hibernate's query language
      paramNames - the names of the parameters
      values - the values of the parameters
      Returns:
      a List containing the results of the query execution
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • findByValueBean

      @Deprecated List<?> findByValueBean(String queryString, Object valueBean) throws org.springframework.dao.DataAccessException
      Deprecated.
      as of 5.0.4, in favor of a custom HibernateCallback lambda code block passed to the general execute(org.springframework.orm.hibernate5.HibernateCallback<T>) method
      Execute an HQL query, binding the properties of the given bean to named parameters in the query string.
      Parameters:
      queryString - a query expressed in Hibernate's query language
      valueBean - the values of the parameters
      Returns:
      a List containing the results of the query execution
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • findByNamedQuery

      @Deprecated List<?> findByNamedQuery(String queryName, Object... values) throws org.springframework.dao.DataAccessException
      Deprecated.
      as of 5.0.4, in favor of a custom HibernateCallback lambda code block passed to the general execute(org.springframework.orm.hibernate5.HibernateCallback<T>) method
      Execute a named query binding a number of values to "?" parameters in the query string.

      A named query is defined in a Hibernate mapping file.

      Parameters:
      queryName - the name of a Hibernate query in a mapping file
      values - the values of the parameters
      Returns:
      a List containing the results of the query execution
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • findByNamedQueryAndNamedParam

      @Deprecated List<?> findByNamedQueryAndNamedParam(String queryName, String paramName, Object value) throws org.springframework.dao.DataAccessException
      Deprecated.
      as of 5.0.4, in favor of a custom HibernateCallback lambda code block passed to the general execute(org.springframework.orm.hibernate5.HibernateCallback<T>) method
      Execute a named query, binding one value to a ":" named parameter in the query string.

      A named query is defined in a Hibernate mapping file.

      Parameters:
      queryName - the name of a Hibernate query in a mapping file
      paramName - the name of parameter
      value - the value of the parameter
      Returns:
      a List containing the results of the query execution
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • findByNamedQueryAndNamedParam

      @Deprecated List<?> findByNamedQueryAndNamedParam(String queryName, String[] paramNames, Object[] values) throws org.springframework.dao.DataAccessException
      Deprecated.
      as of 5.0.4, in favor of a custom HibernateCallback lambda code block passed to the general execute(org.springframework.orm.hibernate5.HibernateCallback<T>) method
      Execute a named query, binding a number of values to ":" named parameters in the query string.

      A named query is defined in a Hibernate mapping file.

      Parameters:
      queryName - the name of a Hibernate query in a mapping file
      paramNames - the names of the parameters
      values - the values of the parameters
      Returns:
      a List containing the results of the query execution
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • findByNamedQueryAndValueBean

      @Deprecated List<?> findByNamedQueryAndValueBean(String queryName, Object valueBean) throws org.springframework.dao.DataAccessException
      Deprecated.
      as of 5.0.4, in favor of a custom HibernateCallback lambda code block passed to the general execute(org.springframework.orm.hibernate5.HibernateCallback<T>) method
      Execute a named query, binding the properties of the given bean to ":" named parameters in the query string.

      A named query is defined in a Hibernate mapping file.

      Parameters:
      queryName - the name of a Hibernate query in a mapping file
      valueBean - the values of the parameters
      Returns:
      a List containing the results of the query execution
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • iterate

      @Deprecated Iterator<?> iterate(String queryString, Object... values) throws org.springframework.dao.DataAccessException
      Deprecated.
      as of 5.0.4, in favor of a custom HibernateCallback lambda code block passed to the general execute(org.springframework.orm.hibernate5.HibernateCallback<T>) method
      Execute a query for persistent instances, binding a number of values to "?" parameters in the query string.

      Returns the results as an Iterator. Entities returned are initialized on demand. See the Hibernate API documentation for details.

      Parameters:
      queryString - a query expressed in Hibernate's query language
      values - the values of the parameters
      Returns:
      an Iterator containing 0 or more persistent instances
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also:
    • closeIterator

      @Deprecated void closeIterator(Iterator<?> it) throws org.springframework.dao.DataAccessException
      Deprecated.
      as of 5.0.4, in favor of a custom HibernateCallback lambda code block passed to the general execute(org.springframework.orm.hibernate5.HibernateCallback<T>) method
      Immediately close an Iterator created by any of the various iterate(..) operations, instead of waiting until the session is closed or disconnected.
      Parameters:
      it - the Iterator to close
      Throws:
      org.springframework.dao.DataAccessException - if the Iterator could not be closed
      See Also:
    • bulkUpdate

      @Deprecated int bulkUpdate(String queryString, Object... values) throws org.springframework.dao.DataAccessException
      Deprecated.
      as of 5.0.4, in favor of a custom HibernateCallback lambda code block passed to the general execute(org.springframework.orm.hibernate5.HibernateCallback<T>) method
      Update/delete all objects according to the given query, binding a number of values to "?" parameters in the query string.
      Parameters:
      queryString - an update/delete query expressed in Hibernate's query language
      values - the values of the parameters
      Returns:
      the number of instances updated/deleted
      Throws:
      org.springframework.dao.DataAccessException - in case of Hibernate errors
      See Also: