Class SessionLazyDelegator
- java.lang.Object
- org.hibernate.engine.spi.SessionLazyDelegator
- All Implemented Interfaces:
EntityManager,Closeable,Serializable,AutoCloseable,QueryProducer,Session,SharedSessionContract
public classSessionLazyDelegatorextendsObjectimplementsSession
This helper class allows decorating a Session instance, while the instance itself is lazily provided via aSupplier. When the decorated instance is readily available, one should prefer usingSessionDelegatorBaseImpl.Another difference with SessionDelegatorBaseImpl is that this type only implements Session.
- See Also:
- Serialized Form
Nested Class Summary
Nested classes/interfaces inherited from interface org.hibernate.Session
Session.LockRequest
Constructor Summary
Constructors Constructor Description SessionLazyDelegator(Supplier<Session> lazySessionLookup)
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidaddEventListeners(SessionEventListener... listeners)Add one or more listeners to the SessionTransactionbeginTransaction()Begin a unit of work and return the associatedTransactionobject.Session.LockRequestbuildLockRequest(LockOptions lockOptions)Deprecated.<T> IdentifierLoadAccess<T>byId(Class<T> entityClass)Create anIdentifierLoadAccessinstance to retrieve an instance of the given entity type by its primary key.<T> IdentifierLoadAccess<T>byId(String entityName)Create anIdentifierLoadAccessinstance to retrieve an instance of the named entity type by its primary key.<T> MultiIdentifierLoadAccess<T>byMultipleIds(Class<T> entityClass)Create aMultiIdentifierLoadAccessinstance to retrieve multiple instances of the given entity type by their primary key values, using batching.<T> MultiIdentifierLoadAccess<T>byMultipleIds(String entityName)Create aMultiIdentifierLoadAccessinstance to retrieve multiple instances of the named entity type by their primary key values, using batching.<T> NaturalIdMultiLoadAccess<T>byMultipleNaturalId(Class<T> entityClass)Create aMultiIdentifierLoadAccessinstance to retrieve multiple instances of the given entity type by their bynatural id values, using batching.<T> NaturalIdMultiLoadAccess<T>byMultipleNaturalId(String entityName)Create aMultiIdentifierLoadAccessinstance to retrieve multiple instances of the named entity type by their bynatural id values, using batching.<T> NaturalIdLoadAccess<T>byNaturalId(Class<T> entityClass)Create aNaturalIdLoadAccessinstance to retrieve an instance of the given entity type by itsnatural id, which may be a composite natural id.<T> NaturalIdLoadAccess<T>byNaturalId(String entityName)Create aNaturalIdLoadAccessinstance to retrieve an instance of the named entity type by itsnatural id, which may be a composite natural id.<T> SimpleNaturalIdLoadAccess<T>bySimpleNaturalId(Class<T> entityClass)Create aSimpleNaturalIdLoadAccessinstance to retrieve an instance of the given entity type by itsnatural id, which must be a simple (non-composite) value.<T> SimpleNaturalIdLoadAccess<T>bySimpleNaturalId(String entityName)Create aSimpleNaturalIdLoadAccessinstance to retrieve an instance of the named entity type by itsnatural id, which must be a simple (non-composite) value.voidcancelQuery()Cancel the execution of the current query.voidclear()Completely clear the session.voidclose()End the session by releasing the JDBC connection and cleaning up.booleancontains(Object entity)booleancontains(String entityName,Object object)Determine if the given entity is associated with this session.<T> RootGraph<T>createEntityGraph(Class<T> rootType)Create a new mutableEntityGraphwith only a root node.<T> RootGraph<T>createEntityGraph(Class<T> rootType,String graphName)Create a new mutable copy of the namedEntityGraph, or returnnullif there is no graph with the given name.RootGraph<?>createEntityGraph(String graphName)Create a new mutable copy of the namedEntityGraph, or returnnullif there is no graph with the given name.MutationQuerycreateMutationQuery(CriteriaDelete deleteQuery)Create aMutationQueryfrom the given delete criteria treeMutationQuerycreateMutationQuery(CriteriaUpdate updateQuery)Create aMutationQueryfrom the given update criteria treeMutationQuerycreateMutationQuery(String hqlString)Create aMutationQueryreference for the given HQL insert, update, or delete statement.MutationQuerycreateMutationQuery(JpaCriteriaInsert insertSelect)Create aMutationQueryfrom the given insert criteria treeMutationQuerycreateMutationQuery(JpaCriteriaInsertSelect insertSelect)Create aMutationQueryfrom the given insert-select criteria treeMutationQuerycreateNamedMutationQuery(String name)Create aMutationQueryinstance for the given named insert, update, or delete HQL query.QuerycreateNamedQuery(String name)Deprecated.<R> Query<R>createNamedQuery(String name,Class<R> resultClass)Create a typedQueryinstance for the given named query.SelectionQuery<?>createNamedSelectionQuery(String name)Create aSelectionQueryinstance for the namedNamedQuery.<R> SelectionQuery<R>createNamedSelectionQuery(String name,Class<R> resultType)Create aSelectionQueryinstance for the namedNamedQuerywith the given result type.ProcedureCallcreateNamedStoredProcedureQuery(String name)Obtain aProcedureCallbased on a named templateMutationQuerycreateNativeMutationQuery(String sqlString)Create aNativeQueryinstance for the given native SQL statement.NativeQuerycreateNativeQuery(String sqlString)Deprecated.NativeQuerycreateNativeQuery(String sqlString,Class resultClass)Create aNativeQueryinstance for the given native SQL query using an implicit mapping to the specified Java type.<R> NativeQuery<R>createNativeQuery(String sqlString,Class<R> resultClass,String tableAlias)Create aNativeQueryinstance for the given native SQL query using an implicit mapping to the specified Java entity type.NativeQuerycreateNativeQuery(String sqlString,String resultSetMappingName)Deprecated.<R> NativeQuery<R>createNativeQuery(String sqlString,String resultSetMappingName,Class<R> resultClass)Create aNativeQueryinstance for the given native SQL query using an explicit mapping to the specified Java type.QuerycreateQuery(CriteriaDelete deleteQuery)Deprecated.<R> Query<R>createQuery(CriteriaQuery<R> criteriaQuery)Create aQueryfor the given JPACriteriaQuery.QuerycreateQuery(CriteriaUpdate updateQuery)Deprecated.QuerycreateQuery(String queryString)Deprecated.<R> Query<R>createQuery(String queryString,Class<R> resultClass)Create a typedQueryinstance for the given HQL query string and given query result type.<R> SelectionQuery<R>createSelectionQuery(CriteriaQuery<R> criteria)Create aSelectionQueryreference for the givenCriteriaQuery.SelectionQuery<?>createSelectionQuery(String hqlString)Create aSelectionQueryreference for the given HQLselectstatement.<R> SelectionQuery<R>createSelectionQuery(String hqlString,Class<R> resultType)Create aSelectionQueryinstance for the given HQL query string and given query result type.ProcedureCallcreateStoredProcedureCall(String procedureName)Create aProcedureCallto a stored procedure.ProcedureCallcreateStoredProcedureCall(String procedureName,Class<?>... resultClasses)Create aProcedureCallto a stored procedure with the given result set entity mappings.ProcedureCallcreateStoredProcedureCall(String procedureName,String... resultSetMappings)Create aProcedureCallto a stored procedure with the given result set entity mappings.ProcedureCallcreateStoredProcedureQuery(String procedureName)Create aProcedureCallto a stored procedure.ProcedureCallcreateStoredProcedureQuery(String procedureName,Class... resultClasses)Create aProcedureCallto a stored procedure with the given result set entity mappings.ProcedureCallcreateStoredProcedureQuery(String procedureName,String... resultSetMappings)Create aProcedureCallto a stored procedure with the given result set entity mappings.voiddelete(Object object)Deprecated.voiddelete(String entityName,Object object)Deprecated.voiddetach(Object object)Remove this instance from the session cache.voiddisableFetchProfile(String name)Disable thefetch profilewith the given name in this session.voiddisableFilter(String filterName)Disable the namedfilter for the current session.<T> TdoReturningWork(ReturningWork<T> work)Perform work using theConnectionunderlying by this session, and return a result.voiddoWork(Work work)Perform work using theConnectionunderlying by this session.voidenableFetchProfile(String name)Enable thefetch profilewith the given name in this session.FilterenableFilter(String filterName)Enable the namedfilter for this current session.voidevict(Object object)Remove this instance from the session cache.<T> @Nullable Tfind(Class<T> entityClass,Object primaryKey)<T> @Nullable Tfind(Class<T> entityClass,Object primaryKey,LockModeType lockMode)<T> @Nullable Tfind(Class<T> entityClass,Object primaryKey,LockModeType lockMode,Map<String,Object> properties)<T> @Nullable Tfind(Class<T> entityClass,Object primaryKey,Map<String,Object> properties)voidflush()Force this session to flush.<T> Tget(Class<T> entityType,Object id)Return the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance.<T> Tget(Class<T> entityType,Object id,LockMode lockMode)Return the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance.<T> Tget(Class<T> entityType,Object id,LockOptions lockOptions)Return the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance.Objectget(String entityName,Object id)Return the persistent instance of the given named entity with the given identifier, or null if there is no such persistent instance.Objectget(String entityName,Object id,LockMode lockMode)Return the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance.Objectget(String entityName,Object id,LockOptions lockOptions)Return the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance.CacheModegetCacheMode()Get the currentcache mode for this session.CacheRetrieveModegetCacheRetrieveMode()The JPA-definedCacheRetrieveMode.CacheStoreModegetCacheStoreMode()The JPA-definedCacheStoreMode.HibernateCriteriaBuildergetCriteriaBuilder()LockModegetCurrentLockMode(Object object)Determine the currentLockModeof the given managed instance associated with this session.ObjectgetDelegate()FiltergetEnabledFilter(String filterName)Retrieve a currently enabledfilter by name.RootGraph<?>getEntityGraph(String graphName)Retrieve the namedEntityGraphas an immutable graph, or returnnullif there is no graph with the given name.<T> List<EntityGraph<? super T>>getEntityGraphs(Class<T> entityClass)Retrieve all namedEntityGraphs with the given type.EntityManagerFactorygetEntityManagerFactory()StringgetEntityName(Object object)Return the entity name for a persistent entity.SessionFactorygetFactory()The factory which created this session.intgetFetchBatchSize()Get the maximum batch size for batch fetching associations by id in this session.FlushModeTypegetFlushMode()Get the currentJPA flush mode for this session.FlushModegetHibernateFlushMode()Get the currentflush mode for this session.ObjectgetIdentifier(Object object)Return the identifier value of the given entity associated with this session.IntegergetJdbcBatchSize()Get the session-level JDBC batch size for the current session.LobHelpergetLobHelper()LockModeTypegetLockMode(Object entity)MetamodelgetMetamodel()NativeQuerygetNamedNativeQuery(String name)Deprecated.NativeQuerygetNamedNativeQuery(String name,String resultSetMapping)Deprecated.ProcedureCallgetNamedProcedureCall(String name)Obtain aProcedureCallbased on a named templateQuerygetNamedQuery(String queryName)Deprecated.Map<String,Object>getProperties()<T> TgetReference(Class<T> entityType,Object id)Return a reference to the persistent instance with the given class and identifier, making the assumption that the instance is still persistent in the database.ObjectgetReference(String entityName,Object id)Return a reference to the persistent instance of the given named entity with the given identifier, making the assumption that the instance is still persistent in the database.<T> TgetReference(T object)Return a reference to the persistent instance with the same identity as the given instance, which might be detached, making the assumption that the instance is still persistent in the database.SessionFactorygetSessionFactory()Get the session factory which created this session.SessionStatisticsgetStatistics()Get thestatistics for this session.StringgetTenantIdentifier()Obtain the tenant identifier associated with this session.ObjectgetTenantIdentifierValue()Obtain the tenant identifier associated with this session.TransactiongetTransaction()Get theTransactioninstance associated with this session.booleanisConnected()Check if the session is currently connected.booleanisDefaultReadOnly()Will entities and proxies that are loaded into this session be made read-only by default?booleanisDirty()Does this session contain any changes which must be synchronized with the database? In other words, would any DML operations be executed if we flushed this session?booleanisFetchProfileEnabled(String name)Is thefetch profilewith the given name enabled in this session?booleanisJoinedToTransaction()Check if the session is joined to the current transaction.booleanisOpen()Check if the session is still open.booleanisReadOnly(Object entityOrProxy)Is the specified entity or proxy read-only?booleanisSubselectFetchingEnabled()Determine if subselect fetching is enabled in this session.voidjoinTransaction()Join the currently-active JTA transaction.<T> Tload(Class<T> theClass,Object id)Deprecated.<T> Tload(Class<T> theClass,Object id,LockMode lockMode)Deprecated.<T> Tload(Class<T> theClass,Object id,LockOptions lockOptions)Deprecated.voidload(Object object,Object id)Read the persistent state associated with the given identifier into the given transient instance.Objectload(String entityName,Object id)Deprecated.Objectload(String entityName,Object id,LockMode lockMode)Deprecated.Objectload(String entityName,Object id,LockOptions lockOptions)Deprecated.voidlock(Object entity,LockModeType lockMode)voidlock(Object entity,LockModeType lockMode,Map<String,Object> properties)voidlock(Object object,LockMode lockMode)Obtain the specified lock level on the given managed instance associated with this session.voidlock(Object object,LockOptions lockOptions)Obtain a lock on the given managed instance associated with this session, using the givenlock options.voidlock(String entityName,Object object,LockMode lockMode)Deprecated.<T> Tmerge(String entityName, T object)Copy the state of the given object onto the persistent object with the same identifier.<T> Tmerge(T object)Copy the state of the given object onto the persistent object with the same identifier.voidpersist(Object object)Make a transient instance persistent and mark it for later insertion in the database.voidpersist(String entityName,Object object)Make a transient instance persistent and mark it for later insertion in the database.voidrefresh(Object object)Reread the state of the given managed instance associated with this session from the underlying database.voidrefresh(Object entity,LockModeType lockMode)voidrefresh(Object entity,LockModeType lockMode,Map<String,Object> properties)voidrefresh(Object entity,Map<String,Object> properties)voidrefresh(Object object,LockMode lockMode)Reread the state of the given managed instance from the underlying database, obtaining the givenLockMode.voidrefresh(Object object,LockOptions lockOptions)Reread the state of the given managed instance from the underlying database, obtaining the givenLockMode.voidrefresh(String entityName,Object object)Deprecated.voidrefresh(String entityName,Object object,LockOptions lockOptions)Deprecated.voidremove(Object object)Mark a persistence instance associated with this session for removal from the underlying database.voidreplicate(Object object,ReplicationMode replicationMode)Deprecated.voidreplicate(String entityName,Object object,ReplicationMode replicationMode)Deprecated.Objectsave(Object object)Deprecated.Objectsave(String entityName,Object object)Deprecated.voidsaveOrUpdate(Object object)Deprecated.voidsaveOrUpdate(String entityName,Object object)Deprecated.SharedSessionBuildersessionWithOptions()Obtain aSessionbuilder with the ability to copy certain information from this session.voidsetCacheMode(CacheMode cacheMode)Set the currentcache mode for this session.voidsetCacheRetrieveMode(CacheRetrieveMode cacheRetrieveMode)Enable or disable reads from the second-level cache.voidsetCacheStoreMode(CacheStoreMode cacheStoreMode)Enable or disable writes to the second-level cache.voidsetDefaultReadOnly(boolean readOnly)Change the default for entities and proxies loaded into this session from modifiable to read-only mode, or from modifiable to read-only mode.voidsetFetchBatchSize(int batchSize)Set the maximum batch size for batch fetching associations by id in this session.voidsetFlushMode(FlushModeType flushMode)Set the currentJPA flush modefor this session.voidsetHibernateFlushMode(FlushMode flushMode)Set the currentflush mode for this session.voidsetJdbcBatchSize(Integer jdbcBatchSize)Set the session-level JDBC batch size.voidsetProperty(String propertyName,Object value)voidsetReadOnly(Object entityOrProxy, boolean readOnly)Set an unmodified persistent object to read-only mode, or a read-only object to modifiable mode.voidsetSubselectFetchingEnabled(boolean enabled)Enable or disable subselect fetching in this session.<T> Tunwrap(Class<T> cls)voidupdate(Object object)Deprecated.voidupdate(String entityName,Object object)Deprecated.
Method Detail
getFactory
public SessionFactory getFactory()
Description copied from interface:SharedSessionContractThe factory which created this session.- Specified by:
getFactoryin interfaceSharedSessionContract
flush
public void flush()
Description copied from interface:SessionForce this session to flush. Must be called at the end of a unit of work, before the transaction is committed. Depending on the currentflush mode, the session might automatically flush whenEntityTransaction.commit()is called, and it is not necessary to call this method directly.Flushing is the process of synchronizing the underlying persistent store with persistable state held in memory.
- Specified by:
flushin interfaceEntityManager- Specified by:
flushin interfaceSession
setFlushMode
public void setFlushMode(FlushModeType flushMode)
Description copied from interface:SessionSet the currentJPA flush modefor this session.Flushing is the process of synchronizing the underlying persistent store with persistable state held in memory. The current flush mode determines when the session is automatically flushed.
- Specified by:
setFlushModein interfaceEntityManager- Specified by:
setFlushModein interfaceSession- Parameters:
flushMode- the newFlushModeType- See Also:
for additional options
setHibernateFlushMode
public void setHibernateFlushMode(FlushMode flushMode)
Description copied from interface:SessionSet the currentflush mode for this session.Flushing is the process of synchronizing the underlying persistent store with persistable state held in memory. The current flush mode determines when the session is automatically flushed.
Thedefault flush mode is sometimes unnecessarily aggressive. For a logically "read only" session, it's reasonable to set the session's flush mode to
FlushMode.MANUALat the start of the session in order to avoid some unnecessary work.Note that
FlushModedefines more options thanFlushModeType.- Specified by:
setHibernateFlushModein interfaceSession- Parameters:
flushMode- the newFlushMode
getFlushMode
public FlushModeType getFlushMode()
Description copied from interface:SessionGet the currentJPA flush mode for this session.- Specified by:
getFlushModein interfaceEntityManager- Specified by:
getFlushModein interfaceSession- Returns:
- the
FlushModeTypecurrently in effect
getHibernateFlushMode
public FlushMode getHibernateFlushMode()
Description copied from interface:SessionGet the currentflush mode for this session.- Specified by:
getHibernateFlushModein interfaceSession- Returns:
- the
FlushModecurrently in effect
setCacheMode
public void setCacheMode(CacheMode cacheMode)
Description copied from interface:SessionSet the currentcache mode for this session.The cache mode determines the manner in which this session can interact with the second level cache.
- Specified by:
setCacheModein interfaceSession- Parameters:
cacheMode- the new cache mode
setCacheRetrieveMode
public void setCacheRetrieveMode(CacheRetrieveMode cacheRetrieveMode)
Description copied from interface:SessionEnable or disable reads from the second-level cache.- Specified by:
setCacheRetrieveModein interfaceSession- Parameters:
cacheRetrieveMode- a JPA-definedCacheRetrieveMode- See Also:
Session.setCacheMode(CacheMode)
setCacheStoreMode
public void setCacheStoreMode(CacheStoreMode cacheStoreMode)
Description copied from interface:SessionEnable or disable writes to the second-level cache.- Specified by:
setCacheStoreModein interfaceSession- Parameters:
cacheStoreMode- a JPA-definedCacheStoreMode- See Also:
Session.setCacheMode(CacheMode)
getCacheStoreMode
public CacheStoreMode getCacheStoreMode()
Description copied from interface:SessionThe JPA-definedCacheStoreMode.- Specified by:
getCacheStoreModein interfaceSession- See Also:
Session.getCacheMode()
getCacheRetrieveMode
public CacheRetrieveMode getCacheRetrieveMode()
Description copied from interface:SessionThe JPA-definedCacheRetrieveMode.- Specified by:
getCacheRetrieveModein interfaceSession- See Also:
Session.getCacheMode()
getCacheMode
public CacheMode getCacheMode()
Description copied from interface:SessionGet the currentcache mode for this session.- Specified by:
getCacheModein interfaceSession- Returns:
- the current cache mode
getSessionFactory
public SessionFactory getSessionFactory()
Description copied from interface:SessionGet the session factory which created this session.- Specified by:
getSessionFactoryin interfaceSession- Returns:
- the session factory
- See Also:
SessionFactory
cancelQuery
public void cancelQuery()
Description copied from interface:SessionCancel the execution of the current query.This is the sole method on session which may be safely called from another thread.
- Specified by:
cancelQueryin interfaceSession
isDirty
public boolean isDirty()
Description copied from interface:SessionDoes this session contain any changes which must be synchronized with the database? In other words, would any DML operations be executed if we flushed this session?
isDefaultReadOnly
public boolean isDefaultReadOnly()
Description copied from interface:SessionWill entities and proxies that are loaded into this session be made read-only by default?To determine the read-only/modifiable setting for a particular entity or proxy use
Session.isReadOnly(Object).- Specified by:
isDefaultReadOnlyin interfaceSession- Returns:
true, loaded entities/proxies will be made read-only by default;false, loaded entities/proxies will be made modifiable by default.- See Also:
Session.isReadOnly(Object)
setDefaultReadOnly
public void setDefaultReadOnly(boolean readOnly)
Description copied from interface:SessionChange the default for entities and proxies loaded into this session from modifiable to read-only mode, or from modifiable to read-only mode.Read-only entities are not dirty-checked and snapshots of persistent state are not maintained. Read-only entities can be modified, but changes are not persisted.
When a proxy is initialized, the loaded entity will have the same read-only/modifiable setting as the uninitialized proxy has, regardless of the session's current setting.
To change the read-only/modifiable setting for a particular entity or proxy that already belongs to this session use
Session.setReadOnly(Object, boolean).To override this session's read-only/modifiable setting for all entities and proxies loaded by a certain
QueryuseQuery.setReadOnly(boolean).- Specified by:
setDefaultReadOnlyin interfaceSession- Parameters:
readOnly-true, the default for loaded entities/proxies is read-only;false, the default for loaded entities/proxies is modifiable- See Also:
Session.setReadOnly(Object,boolean),Query.setReadOnly(boolean)
getIdentifier
public Object getIdentifier(Object object)
Description copied from interface:SessionReturn the identifier value of the given entity associated with this session. An exception is thrown if the given entity instance is transient or detached in relation to this session.- Specified by:
getIdentifierin interfaceSession- Parameters:
object- a persistent instance associated with this session- Returns:
- the identifier
contains
public boolean contains(String entityName,Object object)
Description copied from interface:SessionDetermine if the given entity is associated with this session.
detach
public void detach(Object object)
Description copied from interface:SessionRemove this instance from the session cache. Changes to the instance will not be synchronized with the database. This operation cascades to associated instances if the association is mapped withCascadeType.DETACH.- Specified by:
detachin interfaceEntityManager- Specified by:
detachin interfaceSession- Parameters:
object- the managed instance to detach
evict
public void evict(Object object)
Description copied from interface:SessionRemove this instance from the session cache. Changes to the instance will not be synchronized with the database. This operation cascades to associated instances if the association is mapped withCascadeType.DETACH.This operation is a synonym for
Session.detach(Object).
load
@Deprecatedpublic <T> T load(Class<T> theClass,Object id,LockMode lockMode)
Deprecated.Description copied from interface:SessionReturn the persistent instance of the given entity class with the given identifier, obtaining the specified lock mode, assuming the instance exists.Convenient form of
Session.load(Class, Object, LockOptions).- Specified by:
loadin interfaceSession- Parameters:
theClass- a persistent classid- a valid identifier of an existing persistent instance of the classlockMode- the lock level- Returns:
- the persistent instance or proxy
- See Also:
Session.load(Class, Object, LockOptions)
load
@Deprecatedpublic <T> T load(Class<T> theClass,Object id,LockOptions lockOptions)
Deprecated.Description copied from interface:SessionReturn the persistent instance of the given entity class with the given identifier, obtaining the specified lock mode, assuming the instance exists.
load
@Deprecatedpublic Object load(String entityName,Object id,LockMode lockMode)
Deprecated.Description copied from interface:SessionReturn the persistent instance of the given entity class with the given identifier, obtaining the specified lock mode, assuming the instance exists.Convenient form of
Session.load(String, Object, LockOptions).- Specified by:
loadin interfaceSession- Parameters:
entityName- the entity nameid- a valid identifier of an existing persistent instance of the classlockMode- the lock level- Returns:
- the persistent instance or proxy
- See Also:
Session.load(String, Object, LockOptions)
load
@Deprecatedpublic Object load(String entityName,Object id,LockOptions lockOptions)
Deprecated.Description copied from interface:SessionReturn the persistent instance of the given entity class with the given identifier, obtaining the specified lock mode, assuming the instance exists.
load
@Deprecatedpublic <T> T load(Class<T> theClass,Object id)
Deprecated.Description copied from interface:SessionReturn the persistent instance of the given entity class with the given identifier, making the assumption that the instance exists in the database. This method might return a proxied instance that is initialized on-demand, when a non-identifier method is accessed.You should not use this method to determine if an instance exists in the database (use
get()instead). Use this only to retrieve an instance that you assume exists, where non-existence would be an actual error.This operation is very similar to
Session.getReference(Class, Object).
load
@Deprecatedpublic Object load(String entityName,Object id)
Deprecated.Description copied from interface:SessionReturn the persistent instance of the given entity class with the given identifier, making the assumption that the instance exists in the database. This method might return a proxied instance that is initialized on-demand, when a non-identifier method is accessed.You should not use this method to determine if an instance exists in the database (use
get()instead). Use this only to retrieve an instance that you assume exists, where non-existence would be an actual error.
load
public void load(Object object,Object id)
Description copied from interface:SessionRead the persistent state associated with the given identifier into the given transient instance.
replicate
@Deprecatedpublic void replicate(Object object,ReplicationMode replicationMode)
Deprecated.Description copied from interface:SessionPersist the state of the given detached instance, reusing the current identifier value. This operation cascades to associated instances if the association is mapped withCascadeType.REPLICATE.
replicate
@Deprecatedpublic void replicate(String entityName,Object object,ReplicationMode replicationMode)
Deprecated.Description copied from interface:SessionPersist the state of the given detached instance, reusing the current identifier value. This operation cascades to associated instances if the association is mapped withCascadeType.REPLICATE.
save
@Deprecatedpublic Object save(Object object)
Deprecated.Description copied from interface:SessionPersist the given transient instance, first assigning a generated identifier. (Or using the current value of the identifier property if theassignedgenerator is used.) This operation cascades to associated instances if the association is mapped withCascadeType.SAVE_UPDATE.This operation is very similar to
Session.persist(Object).
save
@Deprecatedpublic Object save(String entityName,Object object)
Deprecated.Description copied from interface:SessionPersist the given transient instance, first assigning a generated identifier. (Or using the current value of the identifier property if theassignedgenerator is used.) This operation cascades to associated instances if the association is mapped withCascadeType.SAVE_UPDATE.
saveOrUpdate
@Deprecatedpublic void saveOrUpdate(Object object)
Deprecated.Description copied from interface:SessionEitherSession.save(Object)orSession.update(Object)the given instance, depending upon resolution of the unsaved-value checks (see the manual for discussion of unsaved-value checking).This operation cascades to associated instances if the association is mapped with
CascadeType.SAVE_UPDATE.- Specified by:
saveOrUpdatein interfaceSession- Parameters:
object- a transient or detached instance containing new or updated state- See Also:
Session.save(Object),Session.update(Object object)
saveOrUpdate
@Deprecatedpublic void saveOrUpdate(String entityName,Object object)
Deprecated.Description copied from interface:SessionEitherSession.save(String, Object)orSession.update(String, Object)the given instance, depending upon resolution of the unsaved-value checks (see the manual for discussion of unsaved-value checking).This operation cascades to associated instances if the association is mapped with
CascadeType.SAVE_UPDATE.- Specified by:
saveOrUpdatein interfaceSession- Parameters:
entityName- the entity nameobject- a transient or detached instance containing new or updated state- See Also:
Session.save(String,Object),Session.update(String,Object)
update
@Deprecatedpublic void update(Object object)
Deprecated.Description copied from interface:SessionUpdate the persistent instance with the identifier of the given detached instance. If there is a persistent instance with the same identifier, an exception is thrown. This operation cascades to associated instances if the association is mapped withCascadeType.SAVE_UPDATE.
update
@Deprecatedpublic void update(String entityName,Object object)
Deprecated.Description copied from interface:SessionUpdate the persistent instance with the identifier of the given detached instance. If there is a persistent instance with the same identifier, an exception is thrown. This operation cascades to associated instances if the association is mapped withCascadeType.SAVE_UPDATE.
merge
public <T> T merge(T object)
Description copied from interface:SessionCopy the state of the given object onto the persistent object with the same identifier. If there is no persistent instance currently associated with the session, it will be loaded. Return the persistent instance. If the given instance is unsaved, save a copy and return it as a newly persistent instance. The given instance does not become associated with the session. This operation cascades to associated instances if the association is mapped withCascadeType.MERGE.- Specified by:
mergein interfaceEntityManager- Specified by:
mergein interfaceSession- Parameters:
object- a detached instance with state to be copied- Returns:
- an updated persistent instance
merge
public <T> T merge(String entityName, T object)
Description copied from interface:SessionCopy the state of the given object onto the persistent object with the same identifier. If there is no persistent instance currently associated with the session, it will be loaded. Return the persistent instance. If the given instance is unsaved, save a copy and return it as a newly persistent instance. The given instance does not become associated with the session. This operation cascades to associated instances if the association is mapped withCascadeType.MERGE.
persist
public void persist(Object object)
Description copied from interface:SessionMake a transient instance persistent and mark it for later insertion in the database. This operation cascades to associated instances if the association is mapped withCascadeType.PERSIST.For an entity with agenerated id,
persist()ultimately results in generation of an identifier for the given instance. But this may happen asynchronously, when the session isflushed, depending on the identifier generation strategy.- Specified by:
persistin interfaceEntityManager- Specified by:
persistin interfaceSession- Parameters:
object- a transient instance to be made persistent
persist
public void persist(String entityName,Object object)
Description copied from interface:SessionMake a transient instance persistent and mark it for later insertion in the database. This operation cascades to associated instances if the association is mapped withCascadeType.PERSIST.For entities with a
generated id,persist()ultimately results in generation of an identifier for the given instance. But this may happen asynchronously, when the session isflushed, depending on the identifier generation strategy.
delete
@Deprecatedpublic void delete(Object object)
Deprecated.Description copied from interface:SessionRemove a persistent instance from the datastore. The argument may be an instance associated with the receivingSessionor a transient instance with an identifier associated with existing persistent state. This operation cascades to associated instances if the association is mapped withCascadeType.REMOVE.
delete
@Deprecatedpublic void delete(String entityName,Object object)
Deprecated.Description copied from interface:SessionRemove a persistent instance from the datastore. The second argument may be an instance associated with the receivingSessionor a transient instance with an identifier associated with existing persistent state. This operation cascades to associated instances if the association is mapped withCascadeType.REMOVE.
lock
public void lock(Object object,LockMode lockMode)
Description copied from interface:SessionObtain the specified lock level on the given managed instance associated with this session. This operation may be used to:- perform a version check on an entity read from the second-level cache by requesting
LockMode.READ, - schedule a version check at transaction commit by requesting
LockMode.OPTIMISTIC, - schedule a version increment at transaction commit by requesting
LockMode.OPTIMISTIC_FORCE_INCREMENT - upgrade to a pessimistic lock with
LockMode.PESSIMISTIC_READorLockMode.PESSIMISTIC_WRITE, or - immediately increment the version of the given instance by requesting
LockMode.PESSIMISTIC_FORCE_INCREMENT.
If the requested lock mode is already held on the given entity, this operation has no effect.
This operation cascades to associated instances if the association is mapped with
CascadeType.LOCK.The modes
LockMode.WRITEandLockMode.UPGRADE_SKIPLOCKEDare not legal arguments tolock().- perform a version check on an entity read from the second-level cache by requesting
lock
@Deprecatedpublic void lock(String entityName,Object object,LockMode lockMode)
Deprecated.Description copied from interface:SessionObtain the specified lock level on the given managed instance associated with this session. This may be used to:- perform a version check with
LockMode.READ, or - upgrade to a pessimistic lock with
LockMode.PESSIMISTIC_WRITE).
This operation cascades to associated instances if the association is mapped with
CascadeType.LOCK.- perform a version check with
lock
public void lock(Object object,LockOptions lockOptions)
Description copied from interface:SessionObtain a lock on the given managed instance associated with this session, using the givenlock options.This operation cascades to associated instances if the association is mapped with
CascadeType.LOCK.
buildLockRequest
@Deprecatedpublic Session.LockRequest buildLockRequest(LockOptions lockOptions)
Deprecated.Description copied from interface:SessionBuild a newlock request that specifies:- the
LockModeto use, - thepessimistic lock timeout, and
- thescope that is, whether the lock extends to rows of owned collections.
Timeout and scope are ignored if the specified
LockModerepresents a flavor ofoptimistic locking.Call
Session.LockRequest.lock(Object)to actually obtain the requested lock on a managed entity instance.- Specified by:
buildLockRequestin interfaceSession- Parameters:
lockOptions- contains the lock level- Returns:
- a
Session.LockRequestthat can be used to lock any given object.
- the
refresh
public void refresh(Object object)
Description copied from interface:SessionReread the state of the given managed instance associated with this session from the underlying database. This may be useful:- when a database trigger alters the object state upon insert or update,
- afterexecuting any HQL update or delete statement,
- afterexecuting a native SQL statement, or
- after inserting a
BloborClob.
This operation cascades to associated instances if the association is mapped with
CascadeType.REFRESH.This operation requests
LockMode.READ. To obtain a stronger lock, callSession.refresh(Object, LockMode).- Specified by:
refreshin interfaceEntityManager- Specified by:
refreshin interfaceSession- Parameters:
object- a persistent instance associated with this session
refresh
@Deprecatedpublic void refresh(String entityName,Object object)
Deprecated.Description copied from interface:SessionReread the state of the given managed instance associated with this session from the underlying database. This may be useful:- when a database trigger alters the object state upon insert or update,
- afterexecuting any HQL update or delete statement,
- afterexecuting a native SQL statement, or
- after inserting a
BloborClob.
This operation cascades to associated instances if the association is mapped with
CascadeType.REFRESH.
refresh
public void refresh(Object object,LockMode lockMode)
Description copied from interface:SessionReread the state of the given managed instance from the underlying database, obtaining the givenLockMode.Convenient form of
Session.refresh(Object, LockOptions)- Specified by:
refreshin interfaceSession- Parameters:
object- a persistent instance associated with this sessionlockMode- the lock mode to use- See Also:
Session.refresh(Object, LockOptions)
refresh
public void refresh(Object object,LockOptions lockOptions)
Description copied from interface:SessionReread the state of the given managed instance from the underlying database, obtaining the givenLockMode.
refresh
@Deprecatedpublic void refresh(String entityName,Object object,LockOptions lockOptions)
Deprecated.Description copied from interface:SessionReread the state of the given managed instance from the underlying database, obtaining the givenLockMode.
remove
public void remove(Object object)
Description copied from interface:SessionMark a persistence instance associated with this session for removal from the underlying database. Ths operation cascades to associated instances if the association is mappedCascadeType.REMOVE.- Specified by:
removein interfaceEntityManager- Specified by:
removein interfaceSession- Parameters:
object- the managed persistent instance to remove
getCurrentLockMode
public LockMode getCurrentLockMode(Object object)
Description copied from interface:SessionDetermine the currentLockModeof the given managed instance associated with this session.- Specified by:
getCurrentLockModein interfaceSession- Parameters:
object- a persistent instance associated with this session- Returns:
- the current lock mode
clear
public void clear()
Description copied from interface:SessionCompletely clear the session. Evict all loaded instances and cancel all pending saves, updates and deletions. Do not close open iterators or instances ofScrollableResults.- Specified by:
clearin interfaceEntityManager- Specified by:
clearin interfaceSession
get
public <T> T get(Class<T> entityType,Object id)
Description copied from interface:SessionReturn the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance. If the instance is already associated with the session, return that instance. This method never returns an uninitialized instance.This operation is very similar to
EntityManager.find(Class, Object).The object returned by
get()orfind()is either an unproxied instance of the given entity class, of a fully-fetched proxy object.This operation requests
LockMode.NONE, that is, no lock, allowing the object to be retrieved from the cache without the cost of database access. However, if it is necessary to read the state from the database, the object will be returned with the lock modeLockMode.READ.To bypass the second-level cache, and ensure that the state is read from the database, either:
- call
Session.get(Class, Object, LockMode)with the explicit lock modeLockMode.READ, or - set the cache mode to
CacheMode.IGNOREbefore calling this method.
- call
get
public <T> T get(Class<T> entityType,Object id,LockMode lockMode)
Description copied from interface:SessionReturn the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance. If the instance is already associated with the session, return that instance. This method never returns an uninitialized instance. Obtain the specified lock mode if the instance exists.Convenient form of
Session.get(Class, Object, LockOptions).This operation is very similar to
EntityManager.find(Class, Object, jakarta.persistence.LockModeType).- Specified by:
getin interfaceSession- Parameters:
entityType- the entity typeid- an identifierlockMode- the lock mode- Returns:
- a persistent instance or null
- See Also:
Session.get(Class, Object, LockOptions)
get
public <T> T get(Class<T> entityType,Object id,LockOptions lockOptions)
Description copied from interface:SessionReturn the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance. If the instance is already associated with the session, return that instance. This method never returns an uninitialized instance. Obtain the specified lock mode if the instance exists.
get
public Object get(String entityName,Object id)
Description copied from interface:SessionReturn the persistent instance of the given named entity with the given identifier, or null if there is no such persistent instance. If the instance is already associated with the session, return that instance. This method never returns an uninitialized instance.
get
public Object get(String entityName,Object id,LockMode lockMode)
Description copied from interface:SessionReturn the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance. If the instance is already associated with the session, return that instance. This method never returns an uninitialized instance. Obtain the specified lock mode if the instance exists.Convenient form of
Session.get(String, Object, LockOptions)- Specified by:
getin interfaceSession- Parameters:
entityName- the entity nameid- an identifierlockMode- the lock mode- Returns:
- a persistent instance or null
- See Also:
Session.get(String, Object, LockOptions)
get
public Object get(String entityName,Object id,LockOptions lockOptions)
Description copied from interface:SessionReturn the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance. If the instance is already associated with the session, return that instance. This method never returns an uninitialized instance. Obtain the specified lock mode if the instance exists.
getEntityName
public String getEntityName(Object object)
Description copied from interface:SessionReturn the entity name for a persistent entity.- Specified by:
getEntityNamein interfaceSession- Parameters:
object- a persistent entity associated with this session- Returns:
- the entity name
getReference
public <T> T getReference(Class<T> entityType,Object id)
Description copied from interface:SessionReturn a reference to the persistent instance with the given class and identifier, making the assumption that the instance is still persistent in the database. This method never results in access to the underlying data store, and thus might return a proxy that is initialized on-demand, when a non-identifier method is accessed.Note that
Hibernate.createDetachedProxy(SessionFactory, Class, Object)may be used to obtain adetached reference.It's sometimes necessary to narrow a reference returned by
getReference()to a subtype of the given entity type. A direct Java typecast should never be used in this situation. Instead, the methodHibernate.unproxy(Object, Class)is the recommended way to narrow the type of a proxy object. Alternatively, a new reference may be obtained by simply callinggetReference()again, passing the subtype. Either way, the narrowed reference will usually not be identical to the original reference, when the references are compared using the==operator.- Specified by:
getReferencein interfaceEntityManager- Specified by:
getReferencein interfaceSession- Parameters:
entityType- the entity typeid- the identifier of a persistent instance that exists in the database- Returns:
- the persistent instance or proxy
getReference
public Object getReference(String entityName,Object id)
Description copied from interface:SessionReturn a reference to the persistent instance of the given named entity with the given identifier, making the assumption that the instance is still persistent in the database. This method never results in access to the underlying data store, and thus might return a proxy that is initialized on-demand, when a non-identifier method is accessed.- Specified by:
getReferencein interfaceSession- Parameters:
entityName- the entity nameid- the identifier of a persistent instance that exists in the database- Returns:
- the persistent instance or proxy
getReference
public <T> T getReference(T object)
Description copied from interface:SessionReturn a reference to the persistent instance with the same identity as the given instance, which might be detached, making the assumption that the instance is still persistent in the database. This method never results in access to the underlying data store, and thus might return a proxy that is initialized on-demand, when a non-identifier method is accessed.- Specified by:
getReferencein interfaceSession- Parameters:
object- a detached persistent instance- Returns:
- the persistent instance or proxy
byId
public <T> IdentifierLoadAccess<T> byId(String entityName)
Description copied from interface:SessionCreate anIdentifierLoadAccessinstance to retrieve an instance of the named entity type by its primary key.- Specified by:
byIdin interfaceSession- Parameters:
entityName- the entity name of the entity type to be retrieved- Returns:
- an instance of
IdentifierLoadAccessfor executing the lookup
byMultipleIds
public <T> MultiIdentifierLoadAccess<T> byMultipleIds(Class<T> entityClass)
Description copied from interface:SessionCreate aMultiIdentifierLoadAccessinstance to retrieve multiple instances of the given entity type by their primary key values, using batching.- Specified by:
byMultipleIdsin interfaceSession- Parameters:
entityClass- the entity type to be retrieved- Returns:
- an instance of
MultiIdentifierLoadAccessfor executing the lookup
byMultipleIds
public <T> MultiIdentifierLoadAccess<T> byMultipleIds(String entityName)
Description copied from interface:SessionCreate aMultiIdentifierLoadAccessinstance to retrieve multiple instances of the named entity type by their primary key values, using batching.- Specified by:
byMultipleIdsin interfaceSession- Parameters:
entityName- the entity name of the entity type to be retrieved- Returns:
- an instance of
MultiIdentifierLoadAccessfor executing the lookup
byId
public <T> IdentifierLoadAccess<T> byId(Class<T> entityClass)
Description copied from interface:SessionCreate anIdentifierLoadAccessinstance to retrieve an instance of the given entity type by its primary key.- Specified by:
byIdin interfaceSession- Parameters:
entityClass- the entity type to be retrieved- Returns:
- an instance of
IdentifierLoadAccessfor executing the lookup
byNaturalId
public <T> NaturalIdLoadAccess<T> byNaturalId(String entityName)
Description copied from interface:SessionCreate aNaturalIdLoadAccessinstance to retrieve an instance of the named entity type by itsnatural id, which may be a composite natural id. The entity must have at least one attribute annotatedNaturalId.- Specified by:
byNaturalIdin interfaceSession- Parameters:
entityName- the entity name of the entity type to be retrieved- Returns:
- an instance of
NaturalIdLoadAccessfor executing the lookup
byNaturalId
public <T> NaturalIdLoadAccess<T> byNaturalId(Class<T> entityClass)
Description copied from interface:SessionCreate aNaturalIdLoadAccessinstance to retrieve an instance of the given entity type by itsnatural id, which may be a composite natural id. The entity must have at least one attribute annotatedNaturalId.- Specified by:
byNaturalIdin interfaceSession- Parameters:
entityClass- the entity type to be retrieved- Returns:
- an instance of
NaturalIdLoadAccessfor executing the lookup
bySimpleNaturalId
public <T> SimpleNaturalIdLoadAccess<T> bySimpleNaturalId(String entityName)
Description copied from interface:SessionCreate aSimpleNaturalIdLoadAccessinstance to retrieve an instance of the named entity type by itsnatural id, which must be a simple (non-composite) value. The entity must have exactly one attribute annotatedNaturalId.- Specified by:
bySimpleNaturalIdin interfaceSession- Parameters:
entityName- the entity name of the entity type to be retrieved- Returns:
- an instance of
SimpleNaturalIdLoadAccessfor executing the lookup
bySimpleNaturalId
public <T> SimpleNaturalIdLoadAccess<T> bySimpleNaturalId(Class<T> entityClass)
Description copied from interface:SessionCreate aSimpleNaturalIdLoadAccessinstance to retrieve an instance of the given entity type by itsnatural id, which must be a simple (non-composite) value. The entity must have exactly one attribute annotatedNaturalId.- Specified by:
bySimpleNaturalIdin interfaceSession- Parameters:
entityClass- the entity type to be retrieved- Returns:
- an instance of
SimpleNaturalIdLoadAccessfor executing the lookup
byMultipleNaturalId
public <T> NaturalIdMultiLoadAccess<T> byMultipleNaturalId(Class<T> entityClass)
Description copied from interface:SessionCreate aMultiIdentifierLoadAccessinstance to retrieve multiple instances of the given entity type by their bynatural id values, using batching.- Specified by:
byMultipleNaturalIdin interfaceSession- Parameters:
entityClass- the entity type to be retrieved- Returns:
- an instance of
NaturalIdMultiLoadAccessfor executing the lookup
byMultipleNaturalId
public <T> NaturalIdMultiLoadAccess<T> byMultipleNaturalId(String entityName)
Description copied from interface:SessionCreate aMultiIdentifierLoadAccessinstance to retrieve multiple instances of the named entity type by their bynatural id values, using batching.- Specified by:
byMultipleNaturalIdin interfaceSession- Parameters:
entityName- the entity name of the entity type to be retrieved- Returns:
- an instance of
NaturalIdMultiLoadAccessfor executing the lookup
enableFilter
public Filter enableFilter(String filterName)
Description copied from interface:SharedSessionContractEnable the namedfilter for this current session.The returned
Filterobject must be used to bind arguments to parameters of the filter, and every parameter must be set before any other operation of this session is called.- Specified by:
enableFilterin interfaceSession- Specified by:
enableFilterin interfaceSharedSessionContract- Parameters:
filterName- the name of the filter to be enabled.- Returns:
- the
Filterinstance representing the enabled filter. - See Also:
FilterDef
getEnabledFilter
public Filter getEnabledFilter(String filterName)
Description copied from interface:SharedSessionContractRetrieve a currently enabledfilter by name.- Specified by:
getEnabledFilterin interfaceSession- Specified by:
getEnabledFilterin interfaceSharedSessionContract- Parameters:
filterName- the name of the filter to be retrieved.- Returns:
- the
Filterinstance representing the enabled filter.
disableFilter
public void disableFilter(String filterName)
Description copied from interface:SharedSessionContractDisable the namedfilter for the current session.- Specified by:
disableFilterin interfaceSession- Specified by:
disableFilterin interfaceSharedSessionContract- Parameters:
filterName- the name of the filter to be disabled.
getStatistics
public SessionStatistics getStatistics()
Description copied from interface:SessionGet thestatistics for this session.- Specified by:
getStatisticsin interfaceSession- Returns:
- the session statistics being collected for this session
isReadOnly
public boolean isReadOnly(Object entityOrProxy)
Description copied from interface:SessionIs the specified entity or proxy read-only?To get the default read-only/modifiable setting used for entities and proxies that are loaded into the session use
Session.isDefaultReadOnly()- Specified by:
isReadOnlyin interfaceSession- Parameters:
entityOrProxy- an entity or proxy- Returns:
trueif the entity or proxy is read-only,falseif the entity or proxy is modifiable.- See Also:
Session.isDefaultReadOnly()
setReadOnly
public void setReadOnly(Object entityOrProxy, boolean readOnly)
Description copied from interface:SessionSet an unmodified persistent object to read-only mode, or a read-only object to modifiable mode. In read-only mode, no snapshot is maintained, the instance is never dirty checked, and changes are not persisted.If the entity or proxy already has the specified read-only/modifiable setting, then this method does nothing.
To set the default read-only/modifiable setting used for all entities and proxies that are loaded into the session use
Session.setDefaultReadOnly(boolean).To override this session's read-only/modifiable setting for entities and proxies loaded by a
QueryuseQuery.setReadOnly(boolean)- Specified by:
setReadOnlyin interfaceSession- Parameters:
entityOrProxy- an entity or proxyreadOnly-trueif the entity or proxy should be made read-only;falseif the entity or proxy should be made modifiable- See Also:
Session.setDefaultReadOnly(boolean),Query.setReadOnly(boolean),IdentifierLoadAccess.withReadOnly(boolean)
isFetchProfileEnabled
public boolean isFetchProfileEnabled(String name) throwsUnknownProfileException
Description copied from interface:SessionIs thefetch profilewith the given name enabled in this session?- Specified by:
isFetchProfileEnabledin interfaceSession- Parameters:
name- the name of the profile- Returns:
- True if fetch profile is enabled; false if not.
- Throws:
UnknownProfileException- Indicates that the given name does not match any known fetch profile names- See Also:
FetchProfile
enableFetchProfile
public void enableFetchProfile(String name) throwsUnknownProfileException
Description copied from interface:SessionEnable thefetch profilewith the given name in this session. If the requested fetch profile is already enabled, the call has no effect.- Specified by:
enableFetchProfilein interfaceSession- Parameters:
name- the name of the fetch profile to be enabled- Throws:
UnknownProfileException- Indicates that the given name does not match any known fetch profile names- See Also:
FetchProfile
disableFetchProfile
public void disableFetchProfile(String name) throwsUnknownProfileException
Description copied from interface:SessionDisable thefetch profilewith the given name in this session. If the requested fetch profile is not currently enabled, the call has no effect.- Specified by:
disableFetchProfilein interfaceSession- Parameters:
name- the name of the fetch profile to be disabled- Throws:
UnknownProfileException- Indicates that the given name does not match any known fetch profile names- See Also:
FetchProfile
getLobHelper
public LobHelper getLobHelper()
Description copied from interface:Session- Specified by:
getLobHelperin interfaceSession- Returns:
- an instance of
LobHelper
sessionWithOptions
public SharedSessionBuilder sessionWithOptions()
Description copied from interface:SessionObtain aSessionbuilder with the ability to copy certain information from this session.- Specified by:
sessionWithOptionsin interfaceSession- Returns:
- the session builder
addEventListeners
public void addEventListeners(SessionEventListener... listeners)
Description copied from interface:SessionAdd one or more listeners to the Session- Specified by:
addEventListenersin interfaceSession- Parameters:
listeners- the listener(s) to add
createEntityGraph
public <T> RootGraph<T> createEntityGraph(Class<T> rootType)
Description copied from interface:SharedSessionContractCreate a new mutableEntityGraphwith only a root node.- Specified by:
createEntityGraphin interfaceEntityManager- Specified by:
createEntityGraphin interfaceSession- Specified by:
createEntityGraphin interfaceSharedSessionContract- Parameters:
rootType- the root entity class of the graph
createEntityGraph
public RootGraph<?> createEntityGraph(String graphName)
Description copied from interface:SharedSessionContractCreate a new mutable copy of the namedEntityGraph, or returnnullif there is no graph with the given name.- Specified by:
createEntityGraphin interfaceEntityManager- Specified by:
createEntityGraphin interfaceSession- Specified by:
createEntityGraphin interfaceSharedSessionContract- Parameters:
graphName- the name of the graph- See Also:
EntityManagerFactory.addNamedEntityGraph(String, EntityGraph)
createEntityGraph
public <T> RootGraph<T> createEntityGraph(Class<T> rootType,String graphName)
Description copied from interface:SharedSessionContractCreate a new mutable copy of the namedEntityGraph, or returnnullif there is no graph with the given name.- Specified by:
createEntityGraphin interfaceSharedSessionContract- Parameters:
rootType- the root entity class of the graphgraphName- the name of the graph- See Also:
EntityManagerFactory.addNamedEntityGraph(String, EntityGraph)
getEntityGraph
public RootGraph<?> getEntityGraph(String graphName)
Description copied from interface:SharedSessionContractRetrieve the namedEntityGraphas an immutable graph, or returnnullif there is no graph with the given name.- Specified by:
getEntityGraphin interfaceEntityManager- Specified by:
getEntityGraphin interfaceSession- Specified by:
getEntityGraphin interfaceSharedSessionContract- Parameters:
graphName- the name of the graph- See Also:
EntityManagerFactory.addNamedEntityGraph(String, EntityGraph)
getEntityGraphs
public <T> List<EntityGraph<? super T>> getEntityGraphs(Class<T> entityClass)
Description copied from interface:SharedSessionContractRetrieve all namedEntityGraphs with the given type.- Specified by:
getEntityGraphsin interfaceEntityManager- Specified by:
getEntityGraphsin interfaceSession- Specified by:
getEntityGraphsin interfaceSharedSessionContract- See Also:
EntityManagerFactory.addNamedEntityGraph(String, EntityGraph)
createQuery
public <R> Query<R> createQuery(String queryString,Class<R> resultClass)
Description copied from interface:QueryProducerCreate a typedQueryinstance for the given HQL query string and given query result type.- If the query has a single item in the
selectlist, then the select item must be assignable to the given result type. - Otherwise, if there are multiple select items, then the select items will be packaged into an instance of the result type. The result type must have an appropriate constructor with parameter types matching the select items, or it must be one of the types
Object[],List,Map, orTuple.
If a query has no explicit
selectlist, the select list is inferred from the given query result type:- if the result type is an entity type, the query must have exactly one root entity in the
fromclause, it must be assignable to the result type, and the inferred select list will contain just that entity, or - otherwise, the select list contains every root entity and every non-
fetchjoined entity, and each query result will be packaged into an instance of the result type, just as specified above.
The returned
Querymay be executed by callingQuery.getResultList()orQuery.getSingleResult().- Specified by:
createQueryin interfaceEntityManager- Specified by:
createQueryin interfaceQueryProducer- Specified by:
createQueryin interfaceSession- Parameters:
queryString- The HQL queryresultClass- The type of the query result- Returns:
- The
Queryinstance for manipulation and execution - See Also:
EntityManager.createQuery(String,Class)
- If the query has a single item in the
createQuery
@Deprecatedpublic Query createQuery(String queryString)
Deprecated.Description copied from interface:QueryProducerCreate aQueryinstance for the given HQL query, or HQL insert, update, or delete statement.If a query has no explicit
selectlist, the select list is inferred:- if there is exactly one root entity in the
fromclause, then that root entity is the only element of the select list, or - otherwise, if there are multiple root entities in the
fromclause, then the select list contains every root entity and every non-fetchjoined entity.
- Specified by:
createQueryin interfaceEntityManager- Specified by:
createQueryin interfaceQueryProducer- Specified by:
createQueryin interfaceSession- Parameters:
queryString- The HQL query- Returns:
- The
Queryinstance for manipulation and execution - See Also:
EntityManager.createQuery(String)
- if there is exactly one root entity in the
createNamedQuery
public <R> Query<R> createNamedQuery(String name,Class<R> resultClass)
Description copied from interface:QueryProducerCreate a typedQueryinstance for the given named query. The named query might be defined in HQL or in native SQL.- Specified by:
createNamedQueryin interfaceEntityManager- Specified by:
createNamedQueryin interfaceQueryProducer- Specified by:
createNamedQueryin interfaceSession- Parameters:
name- the name of a query defined in metadataresultClass- the type of the query result- Returns:
- The
Queryinstance for manipulation and execution - See Also:
EntityManager.createNamedQuery(String,Class)
createNamedQuery
@Deprecatedpublic Query createNamedQuery(String name)
Deprecated.Description copied from interface:QueryProducerCreate a typedQueryinstance for the given named query. The named query might be defined in HQL or in native SQL.- Specified by:
createNamedQueryin interfaceEntityManager- Specified by:
createNamedQueryin interfaceQueryProducer- Specified by:
createNamedQueryin interfaceSession- Parameters:
name- the name of a predefined named query- Returns:
- The
Queryinstance for manipulation and execution - See Also:
EntityManager.createNamedQuery(String)
createQuery
public <R> Query<R> createQuery(CriteriaQuery<R> criteriaQuery)
Description copied from interface:QueryProducerCreate aQueryfor the given JPACriteriaQuery.- Specified by:
createQueryin interfaceEntityManager- Specified by:
createQueryin interfaceQueryProducer- Specified by:
createQueryin interfaceSession
createQuery
@Deprecatedpublic Query createQuery(CriteriaDelete deleteQuery)
Deprecated.Description copied from interface:SessionCreate aQueryfor the given JPACriteriaDelete.- Specified by:
createQueryin interfaceEntityManager- Specified by:
createQueryin interfaceQueryProducer- Specified by:
createQueryin interfaceSession
createQuery
@Deprecatedpublic Query createQuery(CriteriaUpdate updateQuery)
Deprecated.Description copied from interface:SessionCreate aQueryfor the given JPACriteriaUpdate.- Specified by:
createQueryin interfaceEntityManager- Specified by:
createQueryin interfaceQueryProducer- Specified by:
createQueryin interfaceSession
getTenantIdentifier
public String getTenantIdentifier()
Description copied from interface:SharedSessionContractObtain the tenant identifier associated with this session.- Specified by:
getTenantIdentifierin interfaceSharedSessionContract- Returns:
- The tenant identifier associated with this session, or
null
getTenantIdentifierValue
public Object getTenantIdentifierValue()
Description copied from interface:SharedSessionContractObtain the tenant identifier associated with this session.- Specified by:
getTenantIdentifierValuein interfaceSharedSessionContract- Returns:
- The tenant identifier associated with this session, or
null
close
public void close() throwsHibernateException
Description copied from interface:SharedSessionContractEnd the session by releasing the JDBC connection and cleaning up.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein interfaceEntityManager- Specified by:
closein interfaceSharedSessionContract- Throws:
HibernateException- Indicates problems cleaning up.
isOpen
public boolean isOpen()
Description copied from interface:SharedSessionContractCheck if the session is still open.- Specified by:
isOpenin interfaceEntityManager- Specified by:
isOpenin interfaceSharedSessionContract- Returns:
- boolean
isConnected
public boolean isConnected()
Description copied from interface:SharedSessionContractCheck if the session is currently connected.- Specified by:
isConnectedin interfaceSharedSessionContract- Returns:
- boolean
beginTransaction
public Transaction beginTransaction()
Description copied from interface:SharedSessionContractBegin a unit of work and return the associatedTransactionobject. If a new underlying transaction is required, begin the transaction. Otherwise, continue the new work in the context of the existing underlying transaction.- Specified by:
beginTransactionin interfaceSharedSessionContract- Returns:
- a
Transactioninstance - See Also:
SharedSessionContract.getTransaction()
getTransaction
public Transaction getTransaction()
Description copied from interface:SharedSessionContractGet theTransactioninstance associated with this session.- Specified by:
getTransactionin interfaceEntityManager- Specified by:
getTransactionin interfaceSharedSessionContract- Returns:
- a Transaction instance
- See Also:
EntityManager.getTransaction()
getNamedProcedureCall
public ProcedureCall getNamedProcedureCall(String name)
Description copied from interface:SharedSessionContractObtain aProcedureCallbased on a named template- Specified by:
getNamedProcedureCallin interfaceSharedSessionContract- Parameters:
name- The name given to the template- Returns:
- The ProcedureCall
- See Also:
NamedStoredProcedureQuery
createStoredProcedureCall
public ProcedureCall createStoredProcedureCall(String procedureName)
Description copied from interface:SharedSessionContractCreate aProcedureCallto a stored procedure.- Specified by:
createStoredProcedureCallin interfaceSharedSessionContract- Parameters:
procedureName- The name of the procedure.- Returns:
- The representation of the procedure call.
createStoredProcedureCall
public ProcedureCall createStoredProcedureCall(String procedureName,Class<?>... resultClasses)
Description copied from interface:SharedSessionContractCreate aProcedureCallto a stored procedure with the given result set entity mappings. Each given class is considered a "root return".- Specified by:
createStoredProcedureCallin interfaceSharedSessionContract- Parameters:
procedureName- The name of the procedure.resultClasses- The entity(s) to map the result on to.- Returns:
- The representation of the procedure call.
createStoredProcedureCall
public ProcedureCall createStoredProcedureCall(String procedureName,String... resultSetMappings)
Description copied from interface:SharedSessionContractCreate aProcedureCallto a stored procedure with the given result set entity mappings.- Specified by:
createStoredProcedureCallin interfaceSharedSessionContract- Parameters:
procedureName- The name of the procedure.resultSetMappings- The explicit result set mapping(s) to use for mapping the results- Returns:
- The representation of the procedure call.
createNamedStoredProcedureQuery
public ProcedureCall createNamedStoredProcedureQuery(String name)
Description copied from interface:SharedSessionContractObtain aProcedureCallbased on a named template- Specified by:
createNamedStoredProcedureQueryin interfaceEntityManager- Specified by:
createNamedStoredProcedureQueryin interfaceSharedSessionContract- Parameters:
name- The name given to the template- Returns:
- The ProcedureCall
- See Also:
NamedStoredProcedureQuery
createStoredProcedureQuery
public ProcedureCall createStoredProcedureQuery(String procedureName)
Description copied from interface:SharedSessionContractCreate aProcedureCallto a stored procedure.- Specified by:
createStoredProcedureQueryin interfaceEntityManager- Specified by:
createStoredProcedureQueryin interfaceSharedSessionContract- Parameters:
procedureName- The name of the procedure.- Returns:
- The representation of the procedure call.
createStoredProcedureQuery
public ProcedureCall createStoredProcedureQuery(String procedureName,Class... resultClasses)
Description copied from interface:SharedSessionContractCreate aProcedureCallto a stored procedure with the given result set entity mappings. Each given class is considered a "root return".- Specified by:
createStoredProcedureQueryin interfaceEntityManager- Specified by:
createStoredProcedureQueryin interfaceSharedSessionContract- Parameters:
procedureName- The name of the procedure.resultClasses- The entity(s) to map the result on to.- Returns:
- The representation of the procedure call.
createStoredProcedureQuery
public ProcedureCall createStoredProcedureQuery(String procedureName,String... resultSetMappings)
Description copied from interface:SharedSessionContractCreate aProcedureCallto a stored procedure with the given result set entity mappings.- Specified by:
createStoredProcedureQueryin interfaceEntityManager- Specified by:
createStoredProcedureQueryin interfaceSharedSessionContract- Parameters:
procedureName- The name of the procedure.resultSetMappings- The explicit result set mapping(s) to use for mapping the results- Returns:
- The representation of the procedure call.
getJdbcBatchSize
public Integer getJdbcBatchSize()
Description copied from interface:SharedSessionContractGet the session-level JDBC batch size for the current session.- Specified by:
getJdbcBatchSizein interfaceSharedSessionContract- Returns:
- the current session-level JDBC batch size
- See Also:
SessionFactoryOptions.getJdbcBatchSize(),SessionFactoryBuilder.applyJdbcBatchSize(int)
setJdbcBatchSize
public void setJdbcBatchSize(Integer jdbcBatchSize)
Description copied from interface:SharedSessionContractSet the session-level JDBC batch size. Override thefactory-level JDBC batch size controlled by the configuration property"hibernate.jdbc.batch_size".- Specified by:
setJdbcBatchSizein interfaceSharedSessionContract- Parameters:
jdbcBatchSize- the new session-level JDBC batch size- See Also:
BatchSettings.STATEMENT_BATCH_SIZE,SessionFactoryOptions.getJdbcBatchSize(),SessionFactoryBuilder.applyJdbcBatchSize(int)
getFetchBatchSize
public int getFetchBatchSize()
Description copied from interface:SessionGet the maximum batch size for batch fetching associations by id in this session.- Specified by:
getFetchBatchSizein interfaceSession
setFetchBatchSize
public void setFetchBatchSize(int batchSize)
Description copied from interface:SessionSet the maximum batch size for batch fetching associations by id in this session. Override thefactory-level default controlled by the configuration property"hibernate.default_batch_fetch_size".- If
batchSize>1, then batch fetching is enabled. - If
batchSize<0, the batch size is inherited from the factory-level setting. - Otherwise, batch fetching is disabled.
- Specified by:
setFetchBatchSizein interfaceSession- Parameters:
batchSize- the maximum batch size for batch fetching- See Also:
FetchSettings.DEFAULT_BATCH_FETCH_SIZE
- If
isSubselectFetchingEnabled
public boolean isSubselectFetchingEnabled()
Description copied from interface:SessionDetermine if subselect fetching is enabled in this session.- Specified by:
isSubselectFetchingEnabledin interfaceSession- Returns:
trueis subselect fetching is enabled
setSubselectFetchingEnabled
public void setSubselectFetchingEnabled(boolean enabled)
Description copied from interface:SessionEnable or disable subselect fetching in this session. Override thefactory-level default controlled by the configuration property"hibernate.use_subselect_fetch".- Specified by:
setSubselectFetchingEnabledin interfaceSession- Parameters:
enabled-trueto enable subselect fetching- See Also:
FetchSettings.USE_SUBSELECT_FETCH
getCriteriaBuilder
public HibernateCriteriaBuilder getCriteriaBuilder()
Description copied from interface:SharedSessionContract- Specified by:
getCriteriaBuilderin interfaceEntityManager- Specified by:
getCriteriaBuilderin interfaceSharedSessionContract- Returns:
- an instance of
HibernateCriteriaBuilder - See Also:
SessionFactory.getCriteriaBuilder()
doWork
public void doWork(Work work) throwsHibernateException
Description copied from interface:SharedSessionContractPerform work using theConnectionunderlying by this session.- Specified by:
doWorkin interfaceSharedSessionContract- Parameters:
work- The work to be performed.- Throws:
HibernateException- Generally indicates wrappedSQLException
doReturningWork
public <T> T doReturningWork(ReturningWork<T> work) throwsHibernateException
Description copied from interface:SharedSessionContractPerform work using theConnectionunderlying by this session, and return a result.- Specified by:
doReturningWorkin interfaceSharedSessionContract- Type Parameters:
T- The type of the result returned from the work- Parameters:
work- The work to be performed.- Returns:
- the result of calling
ReturningWork.execute(java.sql.Connection). - Throws:
HibernateException- Generally indicates wrappedSQLException
createNativeQuery
@Deprecatedpublic NativeQuery createNativeQuery(String sqlString)
Deprecated.Description copied from interface:QueryProducerCreate aNativeQueryinstance for the given native SQL query.- Specified by:
createNativeQueryin interfaceEntityManager- Specified by:
createNativeQueryin interfaceQueryProducer- Parameters:
sqlString- a native SQL query string- Returns:
- The
NativeQueryinstance for manipulation and execution - See Also:
EntityManager.createNativeQuery(String)
createNativeQuery
public NativeQuery createNativeQuery(String sqlString,Class resultClass)
Description copied from interface:QueryProducerCreate aNativeQueryinstance for the given native SQL query using an implicit mapping to the specified Java type.- If the given class is an entity class, this method is equivalent to
createNativeQuery(sqlString).addEntity(resultClass). - If the given class has a registered
JavaType, then the query must return a result set with a single column whoseJdbcTypeis compatible with thatJavaType. - Otherwise, the select items will be packaged into an instance of the result type. The result type must have an appropriate constructor with parameter types matching the select items, or it must be one of the types
Object[],List,Map, orTuple.
- Specified by:
createNativeQueryin interfaceEntityManager- Specified by:
createNativeQueryin interfaceQueryProducer- Parameters:
sqlString- The native (SQL) query stringresultClass- The Java type to map results to- Returns:
- The
NativeQueryinstance for manipulation and execution - See Also:
EntityManager.createNativeQuery(String,Class)
- If the given class is an entity class, this method is equivalent to
createNativeQuery
public <R> NativeQuery<R> createNativeQuery(String sqlString,Class<R> resultClass,String tableAlias)
Description copied from interface:QueryProducerCreate aNativeQueryinstance for the given native SQL query using an implicit mapping to the specified Java entity type.The given class must be an entity class. This method is equivalent to
createNativeQuery(sqlString).addEntity(tableAlias, resultClass).- Specified by:
createNativeQueryin interfaceQueryProducer- Parameters:
sqlString- Native (SQL) query stringresultClass- The Java entity class to map results totableAlias- The table alias for columns in the result set- Returns:
- The
NativeQueryinstance for manipulation and execution - See Also:
EntityManager.createNativeQuery(String,Class)
createNativeQuery
@Deprecatedpublic NativeQuery createNativeQuery(String sqlString,String resultSetMappingName)
Deprecated.Description copied from interface:QueryProducerCreate aNativeQueryinstance for the given native SQL query using an explicit mapping to the specified Java type.The given result set mapping name must identify a mapping defined by a
SqlResultSetMappingannotation.- Specified by:
createNativeQueryin interfaceEntityManager- Specified by:
createNativeQueryin interfaceQueryProducer- Parameters:
sqlString- The native (SQL) query stringresultSetMappingName- The explicit result mapping name- Returns:
- The
NativeQueryinstance for manipulation and execution - See Also:
EntityManager.createNativeQuery(String,Class),SqlResultSetMapping
createNativeQuery
public <R> NativeQuery<R> createNativeQuery(String sqlString,String resultSetMappingName,Class<R> resultClass)
Description copied from interface:QueryProducerCreate aNativeQueryinstance for the given native SQL query using an explicit mapping to the specified Java type.The given result set mapping name must identify a mapping defined by a
SqlResultSetMappingannotation.- Specified by:
createNativeQueryin interfaceQueryProducer- Parameters:
sqlString- The native (SQL) query stringresultSetMappingName- The explicit result mapping name- Returns:
- The
NativeQueryinstance for manipulation and execution - See Also:
EntityManager.createNativeQuery(String,Class),SqlResultSetMapping
createSelectionQuery
public SelectionQuery<?> createSelectionQuery(String hqlString)
Description copied from interface:QueryProducerCreate aSelectionQueryreference for the given HQLselectstatement.If the statement has no explicit
selectlist, the select list is inferred:- if there is exactly one root entity in the
fromclause, then that root entity is the only element of the select list, or - otherwise, if there are multiple root entities in the
fromclause, then the select list contains every root entity and every non-fetchjoined entity.
- Specified by:
createSelectionQueryin interfaceQueryProducer
- if there is exactly one root entity in the
createSelectionQuery
public <R> SelectionQuery<R> createSelectionQuery(String hqlString,Class<R> resultType)
Description copied from interface:QueryProducerCreate aSelectionQueryinstance for the given HQL query string and given query result type.- If the query has a single item in the
selectlist, then the select item must be assignable to the given result type. - Otherwise, if there are multiple select items, then the select items will be packaged into an instance of the result type. The result type must have an appropriate constructor with parameter types matching the select items, or it must be one of the types
Object[],List,Map, orTuple.
If a query has no explicit
selectlist, the select list is inferred from the given query result type:- if the result type is an entity type, the query must have exactly one root entity in the
fromclause, it must be assignable to the result type, and the inferred select list will contain just that entity, or - otherwise, the select list contains every root entity and every non-
fetchjoined entity, and each query result will be packaged into an instance of the result type, just as specified above.
The returned
Querymay be executed by callingQuery.getResultList()orQuery.getSingleResult().- Specified by:
createSelectionQueryin interfaceQueryProducer- Parameters:
hqlString- The HQL query as a stringresultType- TheClassobject representing the query result type- See Also:
EntityManager.createQuery(String)
- If the query has a single item in the
createSelectionQuery
public <R> SelectionQuery<R> createSelectionQuery(CriteriaQuery<R> criteria)
Description copied from interface:QueryProducerCreate aSelectionQueryreference for the givenCriteriaQuery.- Specified by:
createSelectionQueryin interfaceQueryProducer- See Also:
EntityManager.createQuery(CriteriaQuery)
createMutationQuery
public MutationQuery createMutationQuery(String hqlString)
Description copied from interface:QueryProducerCreate aMutationQueryreference for the given HQL insert, update, or delete statement.- Specified by:
createMutationQueryin interfaceQueryProducer
createMutationQuery
public MutationQuery createMutationQuery(CriteriaUpdate updateQuery)
Description copied from interface:QueryProducerCreate aMutationQueryfrom the given update criteria tree- Specified by:
createMutationQueryin interfaceQueryProducer
createMutationQuery
public MutationQuery createMutationQuery(CriteriaDelete deleteQuery)
Description copied from interface:QueryProducerCreate aMutationQueryfrom the given delete criteria tree- Specified by:
createMutationQueryin interfaceQueryProducer
createMutationQuery
public MutationQuery createMutationQuery(JpaCriteriaInsertSelect insertSelect)
Description copied from interface:QueryProducerCreate aMutationQueryfrom the given insert-select criteria tree- Specified by:
createMutationQueryin interfaceQueryProducer
createMutationQuery
public MutationQuery createMutationQuery(JpaCriteriaInsert insertSelect)
Description copied from interface:QueryProducerCreate aMutationQueryfrom the given insert criteria tree- Specified by:
createMutationQueryin interfaceQueryProducer
createNativeMutationQuery
public MutationQuery createNativeMutationQuery(String sqlString)
Description copied from interface:QueryProducerCreate aNativeQueryinstance for the given native SQL statement.- Specified by:
createNativeMutationQueryin interfaceQueryProducer- Parameters:
sqlString- a native SQL statement string- Returns:
- The NativeQuery instance for manipulation and execution
createNamedSelectionQuery
public SelectionQuery<?> createNamedSelectionQuery(String name)
Description copied from interface:QueryProducerCreate aSelectionQueryinstance for the namedNamedQuery.- Specified by:
createNamedSelectionQueryin interfaceQueryProducer
createNamedSelectionQuery
public <R> SelectionQuery<R> createNamedSelectionQuery(String name,Class<R> resultType)
Description copied from interface:QueryProducerCreate aSelectionQueryinstance for the namedNamedQuerywith the given result type.- Specified by:
createNamedSelectionQueryin interfaceQueryProducer
createNamedMutationQuery
public MutationQuery createNamedMutationQuery(String name)
Description copied from interface:QueryProducerCreate aMutationQueryinstance for the given named insert, update, or delete HQL query. The named query might be defined asHQL) ornative-SQL.- Specified by:
createNamedMutationQueryin interfaceQueryProducer
getNamedQuery
@Deprecatedpublic Query getNamedQuery(String queryName)
Deprecated.Description copied from interface:QueryProducerCreate aQueryinstance for the named query.- Specified by:
getNamedQueryin interfaceQueryProducer- Parameters:
queryName- the name of a predefined named query- Returns:
- The
Queryinstance for manipulation and execution
getNamedNativeQuery
@Deprecatedpublic NativeQuery getNamedNativeQuery(String name)
Deprecated.Description copied from interface:QueryProducerGet aNativeQueryinstance for a named native SQL query- Specified by:
getNamedNativeQueryin interfaceQueryProducer- Parameters:
name- The name of the predefined query- Returns:
- The
NativeQueryinstance for manipulation and execution
getNamedNativeQuery
@Deprecatedpublic NativeQuery getNamedNativeQuery(String name,String resultSetMapping)
Deprecated.Description copied from interface:QueryProducerGet aNativeQueryinstance for a named native SQL query- Specified by:
getNamedNativeQueryin interfaceQueryProducer- Parameters:
name- The name of the predefined query- Returns:
- The
NativeQueryinstance for manipulation and execution
find
public <T> @Nullable T find(Class<T> entityClass,Object primaryKey)
- Specified by:
findin interfaceEntityManager
find
public <T> @Nullable T find(Class<T> entityClass,Object primaryKey,Map<String,Object> properties)
- Specified by:
findin interfaceEntityManager
find
public <T> @Nullable T find(Class<T> entityClass,Object primaryKey,LockModeType lockMode)
- Specified by:
findin interfaceEntityManager
find
public <T> @Nullable T find(Class<T> entityClass,Object primaryKey,LockModeType lockMode,Map<String,Object> properties)
- Specified by:
findin interfaceEntityManager
lock
public void lock(Object entity,LockModeType lockMode)
- Specified by:
lockin interfaceEntityManager
lock
public void lock(Object entity,LockModeType lockMode,Map<String,Object> properties)
- Specified by:
lockin interfaceEntityManager
refresh
public void refresh(Object entity,Map<String,Object> properties)
- Specified by:
refreshin interfaceEntityManager
refresh
public void refresh(Object entity,LockModeType lockMode)
- Specified by:
refreshin interfaceEntityManager
refresh
public void refresh(Object entity,LockModeType lockMode,Map<String,Object> properties)
- Specified by:
refreshin interfaceEntityManager
contains
public boolean contains(Object entity)
- Specified by:
containsin interfaceEntityManager
getLockMode
public LockModeType getLockMode(Object entity)
- Specified by:
getLockModein interfaceEntityManager
setProperty
public void setProperty(String propertyName,Object value)
- Specified by:
setPropertyin interfaceEntityManager
getProperties
public Map<String,Object> getProperties()
- Specified by:
getPropertiesin interfaceEntityManager
joinTransaction
public void joinTransaction()
Description copied from interface:SharedSessionContractJoin the currently-active JTA transaction.- Specified by:
joinTransactionin interfaceEntityManager- Specified by:
joinTransactionin interfaceSharedSessionContract- See Also:
EntityManager.joinTransaction()
isJoinedToTransaction
public boolean isJoinedToTransaction()
Description copied from interface:SharedSessionContractCheck if the session is joined to the current transaction.- Specified by:
isJoinedToTransactionin interfaceEntityManager- Specified by:
isJoinedToTransactionin interfaceSharedSessionContract- See Also:
SharedSessionContract.joinTransaction(),EntityManager.isJoinedToTransaction()
unwrap
public <T> T unwrap(Class<T> cls)
- Specified by:
unwrapin interfaceEntityManager
getDelegate
public Object getDelegate()
- Specified by:
getDelegatein interfaceEntityManager
getEntityManagerFactory
public EntityManagerFactory getEntityManagerFactory()
- Specified by:
getEntityManagerFactoryin interfaceEntityManager
getMetamodel
public Metamodel getMetamodel()
- Specified by:
getMetamodelin interfaceEntityManager