|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Interface that specifies a basic set of JDO operations. Implemented by JdoTemplate. Not often used, but a useful option to enhance testability, as it can easily be mocked or stubbed.
Provides JdoTemplate's data access methods that mirror various PersistenceManager methods. See the JDO PersistenceManager javadocs for details on those methods.
Note that lazy loading will just work with an open JDO PersistenceManager,
either within a Spring-driven transaction (with JdoTransactionManager or
JtaTransactionManager) or within OpenPersistenceManagerInViewFilter/Interceptor.
Furthermore, some operations just make sense within transactions,
for example: evict
, evictAll
, flush
.
JdoTemplate
,
PersistenceManager
,
JdoTransactionManager
,
JtaTransactionManager
,
OpenPersistenceManagerInViewFilter
,
OpenPersistenceManagerInViewInterceptor
Method Summary | |
void |
deletePersistent(Object entity)
Delete the given persistent instance. |
void |
deletePersistentAll(Collection entities)
Delete all given persistent instances. |
void |
evict(Object entity)
Remove the given object from the PersistenceManager cache. |
void |
evictAll()
Remove all objects from the PersistenceManager cache. |
Object |
execute(JdoCallback action)
Execute the action specified by the given action object within a PersistenceManager. |
Collection |
executeFind(JdoCallback action)
Execute the specified action assuming that the result object is a Collection. |
Collection |
find(Class entityClass)
Return all persistent instances of the given class. |
Collection |
find(Class entityClass,
String filter)
Return all persistent instances of the given class that match the given JDOQL filter. |
Collection |
find(Class entityClass,
String filter,
String ordering)
Return all persistent instances of the given class that match the given JDOQL filter, with the given result ordering. |
Collection |
find(Class entityClass,
String filter,
String parameters,
Map values)
Return all persistent instances of the given class that match the given JDOQL filter, using the given parameter declarations and parameter values. |
Collection |
find(Class entityClass,
String filter,
String parameters,
Map values,
String ordering)
Return all persistent instances of the given class that match the given JDOQL filter, using the given parameter declarations and parameter values, with the given result ordering. |
Collection |
find(Class entityClass,
String filter,
String parameters,
Object[] values)
Return all persistent instances of the given class that match the given JDOQL filter, using the given parameter declarations and parameter values. |
Collection |
find(Class entityClass,
String filter,
String parameters,
Object[] values,
String ordering)
Return all persistent instances of the given class that match the given JDOQL filter, using the given parameter declarations and parameter values, with the given result ordering. |
void |
flush()
Flush all transactional modifications to the database. |
Object |
getObjectById(Class entityClass,
Serializable idValue)
Return the persistent instance of the given entity class with the given id value, throwing an exception if not found. |
Object |
getObjectById(Serializable objectId)
Return the persistent instance with the given JDO object id, throwing an exception if not found. |
void |
makePersistent(Object entity)
Make the given transient instance persistent. |
void |
refresh(Object entity)
Re-read the state of the given persistent instance. |
void |
refreshAll()
Re-read the state of all persistent instances. |
Method Detail |
public Object execute(JdoCallback action) throws DataAccessException
Note: Callback code is not supposed to handle transactions itself! Use an appropriate transaction manager like JdoTransactionManager.
action
- callback object that specifies the JDO action
DataAccessException
- in case of JDO errorsJdoTransactionManager
,
org.springframework.dao
,
org.springframework.transaction
,
PersistenceManager
public Collection executeFind(JdoCallback action) throws DataAccessException
action
- callback object that specifies the JDO action
DataAccessException
- in case of JDO errorspublic Object getObjectById(Serializable objectId) throws DataAccessException
A JDO object id identifies both the persistent class and the id within the namespace of that class.
objectId
- a JDO object id of the persistent instance
DataAccessException
- in case of JDO errorsPersistenceManager.getObjectById(java.lang.Object, boolean)
public Object getObjectById(Class entityClass, Serializable idValue) throws DataAccessException
The given id value is typically just unique within the namespace of the persistent class. Its toString value must correspond to the toString value of the corresponding JDO object id.
Usually, the passed-in value will have originated from the primary key field of a persistent object that uses JDO's application identity.
entityClass
- a persistent classidValue
- an id value of the persistent instance
DataAccessException
- in case of JDO errorsPersistenceManager.getObjectById(java.lang.Object, boolean)
,
PersistenceManager.newObjectIdInstance(java.lang.Class, java.lang.String)
public void evict(Object entity) throws DataAccessException
entity
- the persistent instance to evict
DataAccessException
- in case of JDO errorsPersistenceManager.evict(java.lang.Object)
public void evictAll() throws DataAccessException
DataAccessException
- in case of JDO errorsPersistenceManager.evictAll(java.lang.Object[])
public void refresh(Object entity) throws DataAccessException
entity
- the persistent instance to re-read
DataAccessException
- in case of JDO errorsPersistenceManager.refresh(java.lang.Object)
public void refreshAll() throws DataAccessException
DataAccessException
- in case of JDO errorsPersistenceManager.refreshAll(java.lang.Object[])
public void makePersistent(Object entity) throws DataAccessException
entity
- the transient instance to make persistent
DataAccessException
- in case of JDO errorsPersistenceManager.makePersistent(java.lang.Object)
public void deletePersistent(Object entity) throws DataAccessException
entity
- the persistent instance to delete
DataAccessException
- in case of JDO errorsPersistenceManager.deletePersistent(java.lang.Object)
public void deletePersistentAll(Collection entities) throws DataAccessException
This can be combined with any of the find methods to delete by query in two lines of code.
entities
- the persistent instances to delete
DataAccessException
- in case of JDO errorsPersistenceManager.deletePersistentAll(java.lang.Object[])
public void flush() throws DataAccessException
Only invoke this for selective eager flushing, for example when JDBC code needs to see certain changes within the same transaction. Else, it's preferable to rely on auto-flushing at transaction completion.
DataAccessException
- in case of JDO errorsJdoDialect.flush(javax.jdo.PersistenceManager)
public Collection find(Class entityClass) throws DataAccessException
entityClass
- a persistent class
DataAccessException
- in case of JDO errorsPersistenceManager.newQuery(Class)
public Collection find(Class entityClass, String filter) throws DataAccessException
entityClass
- a persistent classfilter
- the JDOQL filter to match (or null if none)
DataAccessException
- in case of JDO errorsPersistenceManager.newQuery(Class, String)
public Collection find(Class entityClass, String filter, String ordering) throws DataAccessException
entityClass
- a persistent classfilter
- the JDOQL filter to match (or null if none)ordering
- the ordering of the result (or null if none)
DataAccessException
- in case of JDO errorsPersistenceManager.newQuery(Class, String)
,
Query.setOrdering(java.lang.String)
public Collection find(Class entityClass, String filter, String parameters, Object[] values) throws DataAccessException
entityClass
- a persistent classfilter
- the JDOQL filter to matchparameters
- the JDOQL parameter declarationsvalues
- the corresponding parameter values
DataAccessException
- in case of JDO errorsPersistenceManager.newQuery(Class, String)
,
Query.declareParameters(java.lang.String)
,
Query.executeWithArray(java.lang.Object[])
public Collection find(Class entityClass, String filter, String parameters, Object[] values, String ordering) throws DataAccessException
entityClass
- a persistent classfilter
- the JDOQL filter to matchparameters
- the JDOQL parameter declarationsvalues
- the corresponding parameter valuesordering
- the ordering of the result (or null if none)
DataAccessException
- in case of JDO errorsPersistenceManager.newQuery(Class, String)
,
Query.declareParameters(java.lang.String)
,
Query.executeWithArray(java.lang.Object[])
,
Query.setOrdering(java.lang.String)
public Collection find(Class entityClass, String filter, String parameters, Map values) throws DataAccessException
entityClass
- a persistent classfilter
- the JDOQL filter to matchparameters
- the JDOQL parameter declarationsvalues
- a Map with parameter names as keys and parameter values
DataAccessException
- in case of JDO errorsPersistenceManager.newQuery(Class, String)
,
Query.declareParameters(java.lang.String)
,
Query.executeWithMap(java.util.Map)
public Collection find(Class entityClass, String filter, String parameters, Map values, String ordering) throws DataAccessException
entityClass
- a persistent classfilter
- the JDOQL filter to matchparameters
- the JDOQL parameter declarationsvalues
- a Map with parameter names as keys and parameter valuesordering
- the ordering of the result (or null if none)
DataAccessException
- in case of JDO errorsPersistenceManager.newQuery(Class, String)
,
Query.declareParameters(java.lang.String)
,
Query.executeWithMap(java.util.Map)
,
Query.setOrdering(java.lang.String)
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |