package com.yang.batch;
import java.sql.Date;
public class Module {
private int id;
private String moduleName;
private String moduleSvnUrl;
private int executeStruts;
private Date lastExecuteDate;
private String moduleSvnStruts;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getModuleName() {
return moduleName;
}
public void setModuleName(String moduleName) {
this.moduleName = moduleName;
}
public String getModuleSvnUrl() {
return moduleSvnUrl;
}
public void setModuleSvnUrl(String moduleSvnUrl) {
this.moduleSvnUrl = moduleSvnUrl;
}
public int getExecuteStruts() {
return executeStruts;
}
public void setExecuteStruts(int executeStruts) {
this.executeStruts = executeStruts;
}
public String getModuleSvnStruts() {
return moduleSvnStruts;
}
public void setModuleSvnStruts(String moduleSvnStruts) {
this.moduleSvnStruts = moduleSvnStruts;
}
public Date getLastExecuteDate() {
return lastExecuteDate;
}
public void setLastExecuteDate(Date lastExecuteDate) {
this.lastExecuteDate = lastExecuteDate;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<bean:beans xmlns="http://www.springframework.org/schema/batch" xmlns:bean="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.springframework.org/schema/batch
http://www.springframework.org/schema/batch/spring-batch-2.2.xsd">
<job id="db2textJob">
<step id="step_db2textJob">
<tasklet transaction-manager="transactionManager">
<chunk reader="jdbcItemReader" writer="textFileWriter" commit-interval="1" />
</tasklet>
</step>
</job>
<bean:bean id="jdbcItemReader" class="org.springframework.batch.item.database.JdbcCursorItemReader" scope="step">
<bean:property name="dataSource" ref="dataSource" />
<bean:property name="sql">
<bean:value>
SELECT id, moduleName, moduleSvnUrl, executeStruts, moduleSvnStruts
FROM tbl_module
</bean:value>
</bean:property>
<bean:property name="rowMapper">
<bean:bean class="org.springframework.jdbc.core.BeanPropertyRowMapper">
<bean:property name="mappedClass" value="com.yang.batch.Module"/>
</bean:bean>
</bean:property>
</bean:bean>
<bean:bean id="textFileWriter" class="org.springframework.batch.item.file.FlatFileItemWriter" scope="step">
<bean:property name="resource" value="file:src/outputTextFile.text" />
<bean:property name="lineAggregator" ref="lineAggregator" />
</bean:bean>
<bean:bean id="lineAggregator" class="org.springframework.batch.item.file.transform.DelimitedLineAggregator">
<bean:property name="delimiter" value="|" />
<bean:property name="fieldExtractor">
<bean:bean class="org.springframework.batch.item.file.transform.BeanWrapperFieldExtractor">
<bean:property name="names">
<bean:list>
<bean:value>id</bean:value>
<bean:value>moduleName</bean:value>
<bean:value>moduleSvnUrl</bean:value>
<bean:value>executeStruts</bean:value>
<bean:value>lastExecuteDate</bean:value>
<bean:value>moduleSvnStruts</bean:value>
</bean:list>
</bean:property>
</bean:bean>
</bean:property>
</bean:bean>
</bean:beans>