|
The Spring Framework | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface JpaCallback
Callback interface for JPA code. To be used with JpaTemplate
's
execution method, often as anonymous classes within a method implementation.
A typical implementation will call EntityManager.find/merge
to perform some operations on persistent objects.
JpaTemplate
,
JpaTransactionManager
Method Summary | |
---|---|
Object |
doInJpa(javax.persistence.EntityManager em)
Gets called by JpaTemplate.execute with an active
JPA EntityManager . |
Method Detail |
---|
Object doInJpa(javax.persistence.EntityManager em) throws javax.persistence.PersistenceException
JpaTemplate.execute
with an active
JPA EntityManager
. Does not need to care about activating
or closing the EntityManager
, or handling transactions.
Note that JPA callback code will not flush any modifications to the database if not executed within a transaction. Thus, you need to make sure that JpaTransactionManager has initiated a JPA transaction when the callback gets called, at least if you want to write to the database.
Allows for returning a result object created within the callback, i.e. a domain object or a collection of domain objects. A thrown custom RuntimeException is treated as an application exception: It gets propagated to the caller of the template.
em
- active EntityManager
null
if none
javax.persistence.PersistenceException
- if thrown by the JPA APIJpaTemplate.execute(org.springframework.orm.jpa.JpaCallback)
,
JpaTemplate.executeFind(org.springframework.orm.jpa.JpaCallback)
|
The Spring Framework | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |