Package org.hibernate
Interface StatelessSession
- All Superinterfaces:
Serializable
- All Known Implementing Classes:
StatelessSessionImpl
A command-oriented API for performing bulk operations against a database.
A stateless session does not implement a first-level cache nor interact
with any second-level cache, nor does it implement transactional
write-behind or automatic dirty checking, nor do operations cascade to
associated instances. Collections are ignored by a stateless session.
Operations performed via a stateless session bypass Hibernate's event model
and interceptors. Stateless sessions are vulnerable to data aliasing
effects, due to the lack of a first-level cache.
For certain kinds of transactions, a stateless session may perform slightly
faster than a stateful session.
-
Method Summary
Modifier and TypeMethodDescriptionBegin a Hibernate transaction.voidclose()Close the stateless session and release the JDBC connection.Returns the current JDBC connection associated with this instance.
If the session is using aggressive connection release (as in a CMT environment), it is the application's responsibility to close the connection returned by this call.createCriteria(Class persistentClass) Create a new Criteria instance, for the given entity class, or a superclass of an entity class.createCriteria(Class persistentClass, String alias) Create a new Criteria instance, for the given entity class, or a superclass of an entity class, with the given alias.createCriteria(String entityName) Create a new Criteria instance, for the given entity name.createCriteria(String entityName, String alias) Create a new Criteria instance, for the given entity name, with the given alias.createQuery(String queryString) Create a new instance of Query for the given HQL query string.createSQLQuery(String queryString) Create a new instance of SQLQuery for the given SQL query string.voidDelete a row.voidDelete a row.get(Class entityClass, Serializable id) Retrieve a row.get(Class entityClass, Serializable id, LockMode lockMode) Retrieve a row, obtaining the specified lock mode.get(String entityName, Serializable id) Retrieve a row.get(String entityName, Serializable id, LockMode lockMode) Retrieve a row, obtaining the specified lock mode.getNamedQuery(String queryName) Obtain an instance of Query for a named query string defined in the mapping file.Get the current Hibernate transaction.Insert a row.Insert a row.voidRefresh the entity instance state from the database.voidRefresh the entity instance state from the database.voidRefresh the entity instance state from the database.voidRefresh the entity instance state from the database.voidUpdate a row.voidUpdate a row.
-
Method Details
-
close
void close()Close the stateless session and release the JDBC connection. -
insert
Insert a row.- Parameters:
entity- a new transient instance
-
insert
Insert a row.- Parameters:
entityName- The entityName for the entity to be insertedentity- a new transient instance- Returns:
- the identifier of the instance
-
update
Update a row.- Parameters:
entity- a detached entity instance
-
update
Update a row.- Parameters:
entityName- The entityName for the entity to be updatedentity- a detached entity instance
-
delete
Delete a row.- Parameters:
entity- a detached entity instance
-
delete
Delete a row.- Parameters:
entityName- The entityName for the entity to be deletedentity- a detached entity instance
-
get
Retrieve a row.- Returns:
- a detached entity instance
-
get
Retrieve a row.- Returns:
- a detached entity instance
-
get
Retrieve a row, obtaining the specified lock mode.- Returns:
- a detached entity instance
-
get
Retrieve a row, obtaining the specified lock mode.- Returns:
- a detached entity instance
-
refresh
Refresh the entity instance state from the database.- Parameters:
entity- The entity to be refreshed.
-
refresh
Refresh the entity instance state from the database.- Parameters:
entityName- The entityName for the entity to be refreshed.entity- The entity to be refreshed.
-
refresh
Refresh the entity instance state from the database.- Parameters:
entity- The entity to be refreshed.lockMode- The LockMode to be applied.
-
refresh
Refresh the entity instance state from the database.- Parameters:
entityName- The entityName for the entity to be refreshed.entity- The entity to be refreshed.lockMode- The LockMode to be applied.
-
createQuery
Create a new instance of Query for the given HQL query string. Entities returned by the query are detached. -
getNamedQuery
Obtain an instance of Query for a named query string defined in the mapping file. Entities returned by the query are detached. -
createCriteria
Create a new Criteria instance, for the given entity class, or a superclass of an entity class. Entities returned by the query are detached.- Parameters:
persistentClass- a class, which is persistent, or has persistent subclasses- Returns:
- Criteria
-
createCriteria
Create a new Criteria instance, for the given entity class, or a superclass of an entity class, with the given alias. Entities returned by the query are detached.- Parameters:
persistentClass- a class, which is persistent, or has persistent subclasses- Returns:
- Criteria
-
createCriteria
Create a new Criteria instance, for the given entity name. Entities returned by the query are detached.- Parameters:
entityName-- Returns:
- Criteria
-
createCriteria
Create a new Criteria instance, for the given entity name, with the given alias. Entities returned by the query are detached.- Parameters:
entityName-- Returns:
- Criteria
-
createSQLQuery
Create a new instance of SQLQuery for the given SQL query string. Entities returned by the query are detached.- Parameters:
queryString- a SQL query- Returns:
- SQLQuery
- Throws:
HibernateException
-
beginTransaction
Transaction beginTransaction()Begin a Hibernate transaction. -
getTransaction
Transaction getTransaction()Get the current Hibernate transaction. -
connection
Connection connection()Returns the current JDBC connection associated with this instance.
If the session is using aggressive connection release (as in a CMT environment), it is the application's responsibility to close the connection returned by this call. Otherwise, the application should not close the connection.
-