我有一个简单的项目编写器,如下所示:
public class EntityItemWriter<T> implements ItemWriter<T>, InitializingBean {
private String name;
@Override
public void write(List<? extends T> items) throws Exception {
//writes to db
}
@Override
public void afterPropertiesSet() throws Exception {
Assert.hasLength(name); //assertion fails
}
public void setName(String name) {
this.name = name;
}
}
我的job-definition.xml有一个像这样的bean:
<bean id="EntityItemWriter" class="com.example.EntityItemWriter" scope="step">
<property name="name" value="someRandomString" />
</bean>
当批处理作业处于写入步骤时,EntityItemWriter的name属性未设置为“someRandomString”并保持为null。有什么我想念的吗?
春季批量版:2.1.0.M3
spring版本:3.1.0.RELEASE