public interface SessionFactory
extends javax.naming.Referenceable, java.io.Serializable
Session instances. Usually
an application has a single SessionFactory instance and threads
servicing client requests obtain Session instances from this factory.
The internal state of a SessionFactory is immutable. Once it is created
this internal state is set. This internal state includes all of the metadata
about Object/Relational Mapping.
Implementors must be threadsafe.Configuration| Modifier and Type | Method and Description |
|---|---|
void |
close()
Destroy this SessionFactory and release all resources (caches,
connection pools, etc).
|
boolean |
containsFetchProfileDefinition(java.lang.String name)
Determine if this session factory contains a fetch profile definition
registered under the given name.
|
void |
evict(java.lang.Class persistentClass)
Deprecated.
Use
Cache.evictEntityRegion(Class) accessed through
getCache() instead. |
void |
evict(java.lang.Class persistentClass,
java.io.Serializable id)
Deprecated.
Use
Cache.containsEntity(Class, Serializable) accessed through
getCache() instead. |
void |
evictCollection(java.lang.String roleName)
Deprecated.
Use
Cache.evictCollectionRegion(String) accessed through
getCache() instead. |
void |
evictCollection(java.lang.String roleName,
java.io.Serializable id)
Deprecated.
Use
Cache.evictCollection(String,Serializable) accessed through
getCache() instead. |
void |
evictEntity(java.lang.String entityName)
Deprecated.
Use
Cache.evictEntityRegion(String) accessed through
getCache() instead. |
void |
evictEntity(java.lang.String entityName,
java.io.Serializable id)
Deprecated.
Use
Cache.evictEntity(String,Serializable) accessed through
getCache() instead. |
void |
evictQueries()
Deprecated.
Use
Cache.evictQueryRegions() accessed through
getCache() instead. |
void |
evictQueries(java.lang.String cacheRegion)
Deprecated.
Use
Cache.evictQueryRegion(String) accessed through
getCache() instead. |
java.util.Map<java.lang.String,ClassMetadata> |
getAllClassMetadata()
Retrieve the
ClassMetadata for all mapped entities. |
java.util.Map |
getAllCollectionMetadata()
Get the
CollectionMetadata for all mapped collections |
Cache |
getCache()
Obtain direct access to the underlying cache regions.
|
ClassMetadata |
getClassMetadata(java.lang.Class entityClass)
Retrieve the
ClassMetadata associated with the given entity class. |
ClassMetadata |
getClassMetadata(java.lang.String entityName)
Retrieve the
ClassMetadata associated with the given entity class. |
CollectionMetadata |
getCollectionMetadata(java.lang.String roleName)
Get the
CollectionMetadata associated with the named collection role. |
Session |
getCurrentSession()
Obtains the current session.
|
java.util.Set |
getDefinedFilterNames()
Obtain a set of the names of all filters defined on this SessionFactory.
|
FilterDefinition |
getFilterDefinition(java.lang.String filterName)
Obtain the definition of a filter by name.
|
Statistics |
getStatistics()
Retrieve the statistics fopr this factory.
|
TypeHelper |
getTypeHelper()
Retrieve this factory's
TypeHelper |
boolean |
isClosed()
Is this factory already closed?
|
Session |
openSession()
Open a
Session. |
Session |
openSession(java.sql.Connection connection)
Open a
Session, utilizing the specfied JDBC Connection. |
Session |
openSession(java.sql.Connection connection,
Interceptor interceptor)
|
Session |
openSession(Interceptor interceptor)
Open a
Session, utilizing the specified Interceptor. |
StatelessSession |
openStatelessSession()
Open a new stateless session.
|
StatelessSession |
openStatelessSession(java.sql.Connection connection)
Open a new stateless session, utilizing the specified JDBC
Connection. |
Session openSession() throws HibernateException
Session.
JDBC connection(s will be obtained from the
configured ConnectionProvider as needed
to perform requested work.HibernateException - Indicates a peroblem opening the session; pretty rare here.Session openSession(Interceptor interceptor) throws HibernateException
Session, utilizing the specified Interceptor.
JDBC connection(s will be obtained from the
configured ConnectionProvider as needed
to perform requested work.interceptor - a session-scoped interceptorHibernateException - Indicates a peroblem opening the session; pretty rare here.Session openSession(java.sql.Connection connection)
Session, utilizing the specfied JDBC Connection.
Note that the second-level cache will be disabled if you supply a JDBC
connection. Hibernate will not be able to track any statements you might
have executed in the same transaction. Consider implementing your own
ConnectionProvider instead as a highly
recommended alternative.
connection - a connection provided by the application.Session openSession(java.sql.Connection connection, Interceptor interceptor)
Session, utilizing the specfied JDBC Connection and
specified Interceptor.
Note that the second-level cache will be disabled if you supply a JDBC
connection. Hibernate will not be able to track any statements you might
have executed in the same transaction. Consider implementing your own
ConnectionProvider instead as a highly
recommended alternative.
connection - a connection provided by the application.interceptor - a session-scoped interceptorSession getCurrentSession() throws HibernateException
CurrentSessionContext impl configured
for use.
Note that for backwards compatibility, if a CurrentSessionContext
is not configured but a JTA TransactionManagerLookup
is configured this will default to the JTASessionContext
impl.HibernateException - Indicates an issue locating a suitable current session.StatelessSession openStatelessSession()
StatelessSession openStatelessSession(java.sql.Connection connection)
Connection.connection - Connection provided by the application.ClassMetadata getClassMetadata(java.lang.Class entityClass)
ClassMetadata associated with the given entity class.entityClass - The entity classHibernateException - Generally null is returned instead of throwing.ClassMetadata getClassMetadata(java.lang.String entityName)
ClassMetadata associated with the given entity class.entityName - The entity classHibernateException - Generally null is returned instead of throwing.CollectionMetadata getCollectionMetadata(java.lang.String roleName)
CollectionMetadata associated with the named collection role.roleName - The collection role (in form [owning-entity-name].[collection-property-name]).HibernateException - Generally null is returned instead of throwing.java.util.Map<java.lang.String,ClassMetadata> getAllClassMetadata()
ClassMetadata for all mapped entities.ClassMetadata keyed by the
corresponding String entity-name.HibernateException - Generally empty map is returned instead of throwing.Class to String.java.util.Map getAllCollectionMetadata()
CollectionMetadata for all mapped collectionsHibernateException - Generally empty map is returned instead of throwing.Statistics getStatistics()
void close()
throws HibernateException
sessions before calling this method as the impact
on those sessions is indeterminate.
No-ops if already closed.HibernateException - Indicates an issue closing the factory.boolean isClosed()
Cache getCache()
void evict(java.lang.Class persistentClass)
throws HibernateException
persistentClass - The entity class for which to evict data.HibernateException - Generally will mean that either that
'persisttentClass' did not name a mapped entity or a problem
communicating with underlying cache impl.void evict(java.lang.Class persistentClass,
java.io.Serializable id)
throws HibernateException
persistentClass - The entity class for which to evict data.id - The entity idHibernateException - Generally will mean that either that
'persisttentClass' did not name a mapped entity or a problem
communicating with underlying cache impl.void evictEntity(java.lang.String entityName)
throws HibernateException
entityName - The entity name for which to evict data.HibernateException - Generally will mean that either that
'persisttentClass' did not name a mapped entity or a problem
communicating with underlying cache impl.void evictEntity(java.lang.String entityName,
java.io.Serializable id)
throws HibernateException
entityName - The entity name for which to evict data.id - The entity idHibernateException - Generally will mean that either that
'persisttentClass' did not name a mapped entity or a problem
communicating with underlying cache impl.void evictCollection(java.lang.String roleName)
throws HibernateException
roleName - The name of the collection role whose regions should be evictedHibernateException - Generally will mean that either that
'roleName' did not name a mapped collection or a problem
communicating with underlying cache impl.void evictCollection(java.lang.String roleName,
java.io.Serializable id)
throws HibernateException
roleName - The name of the collection roleid - The id of the collection ownerHibernateException - Generally will mean that either that
'roleName' did not name a mapped collection or a problem
communicating with underlying cache impl.void evictQueries(java.lang.String cacheRegion)
throws HibernateException
cacheRegion - The named query cache region from which to evict.HibernateException - Since a not-found 'cacheRegion' simply no-ops,
this should indicate a problem communicating with underlying cache impl.void evictQueries()
throws HibernateException
HibernateException - Indicate a problem communicating with
underlying cache impl.java.util.Set getDefinedFilterNames()
FilterDefinition getFilterDefinition(java.lang.String filterName) throws HibernateException
filterName - The name of the filter for which to obtain the definition.HibernateException - If no filter defined with the given name.boolean containsFetchProfileDefinition(java.lang.String name)
name - The name to checkTypeHelper getTypeHelper()
TypeHelperTypeHelperCopyright © 2013. All Rights Reserved.