org.springframework.batch.core.repository.dao
Class JdbcStepExecutionDao
java.lang.Object
org.springframework.batch.core.repository.dao.AbstractJdbcBatchMetadataDao
org.springframework.batch.core.repository.dao.JdbcStepExecutionDao
- All Implemented Interfaces:
- StepExecutionDao, InitializingBean
public class JdbcStepExecutionDao
- extends AbstractJdbcBatchMetadataDao
- implements StepExecutionDao, InitializingBean
Jdbc implementation of StepExecutionDao
.
Allows customization of the tables names used by Spring Batch for step meta
data via a prefix property.
Uses sequences or tables (via Spring's DataFieldMaxValueIncrementer
abstraction) to create all primary keys before inserting a new row. All
objects are checked to ensure all fields to be stored are not null. If any
are found to be null, an IllegalArgumentException will be thrown. This could
be left to JdbcTemplate, however, the exception will be fairly vague, and
fails to highlight which field caused the exception.
- Author:
- Lucas Ward, Dave Syer, Robert Kasanicky
- See Also:
StepExecutionDao
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
JdbcStepExecutionDao
public JdbcStepExecutionDao()
findExecutionContext
public ExecutionContext findExecutionContext(StepExecution stepExecution)
- Description copied from interface:
StepExecutionDao
- Find all
ExecutionContext
for the given StepExecution
.
- Specified by:
findExecutionContext
in interface StepExecutionDao
saveStepExecution
public void saveStepExecution(StepExecution stepExecution)
- Save a StepExecution. A unique id will be generated by the
stepExecutionIncrementor, and then set in the StepExecution. All values
will then be stored via an INSERT statement.
- Specified by:
saveStepExecution
in interface StepExecutionDao
- See Also:
StepExecutionDao.saveStepExecution(StepExecution)
saveOrUpdateExecutionContext
public void saveOrUpdateExecutionContext(StepExecution stepExecution)
- Save or update execution attributes. A lob creator must be used, since
any attributes that don't match a provided type must be serialized into a
blob.
- Specified by:
saveOrUpdateExecutionContext
in interface StepExecutionDao
- Parameters:
stepExecution
- the StepExecution
containing the
ExecutionContext
to be saved.- See Also:
LobCreator
updateStepExecution
public void updateStepExecution(StepExecution stepExecution)
- Description copied from interface:
StepExecutionDao
- Update the given StepExecution
Preconditions: Id must not be null.
- Specified by:
updateStepExecution
in interface StepExecutionDao
setLobHandler
public void setLobHandler(LobHandler lobHandler)
setStepExecutionIncrementer
public void setStepExecutionIncrementer(DataFieldMaxValueIncrementer stepExecutionIncrementer)
afterPropertiesSet
public void afterPropertiesSet()
throws Exception
- Specified by:
afterPropertiesSet
in interface InitializingBean
- Overrides:
afterPropertiesSet
in class AbstractJdbcBatchMetadataDao
- Throws:
Exception
getStepExecution
public StepExecution getStepExecution(JobExecution jobExecution,
Step step)
- Specified by:
getStepExecution
in interface StepExecutionDao
Copyright © 2008 SpringSource. All Rights Reserved.