【问题标题】:How to read simple xml list with Spring Batch?如何使用 Spring Batch 读取简单的 xml 列表?
【发布时间】:2014-07-07 13:46:36
【问题描述】:
<parent>
<child>aaa</child> <!-- simple string -->
<child>bbb</child>
...
</parent>
如何使用以下处理器读取这些孩子的价值和处理?
@Override
public void write(final List<? extends String> children) {
}
请注意,我没有任何计划将绑定类映射到<parent/>。
【问题讨论】:
标签:
java
xml
spring
spring-batch
【解决方案1】:
将child设为片段根元素并将其值映射为java.lang.String。
<bean name="reader" class="org.springframework.batch.item.xml.StaxEventItemReader">
<property name="fragmentRootElementName" value="child" />
<property name="resource" value="classpath:/xmlStringReader/source.xml" />
<property name="unmarshaller" ref="unmarshaller" />
</bean>
<bean name="unmarshaller" class="org.springframework.oxm.xstream.XStreamMarshaller">
<property name="aliases">
<map>
<entry key="child" value="java.lang.String" />
</map>
</property>
</bean>