我正在使用我的Pojo对象使用Unmarshall Jaxb读取xml文件(Input.xml)。
使用Unmarshaller读取输入文件示例。
File file = new File(".\\src\\test\\files\\Input.xml");
JAXBContext jaxbContext = JAXBContext.newInstance(MerchantPayments.class);
Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
MerchantPayments MpObj = (MerchantPayments) jaxbUnmarshaller.unmarshal(file);
// Process MpObj..
我现在需要做的是生成一个Output.xml文件,其中包含与Input.xml文件相同的数据,但添加一个名为<result>
的新标记,指示记录是否已成功加载。< / p>
使用包含input.xml的相同数据并添加新标记的Jaxb Marshal功能生成output.xml文件的最佳方法是什么?
我需要生成output.xml文件的新Pojo才能添加新标记,或者还有其他方法使用Jaxb Marshaller?
在Input.xml文件和output.xml文件下面,我需要使用附加标记<result>
生成
Input.xml中
<?xml version='1.0' encoding='UTF-8'?>
<payments>
<payment>
<account>123</account>
<order>110000000001</order>
<amount>19.0</amount>
</payment>
<payment>
<account>1234</account>
<order>110000000002</order>
<amount>20.0</amount>
</payment>
</payments>
Output.xml,包含新标记<result>
:
<?xml version='1.0' encoding='UTF-8'?>
<payments>
<payment>
<account>123</account>
<order>110000000001</order>
<amount>19.0</amount>
**<result>Record loaded correctly</result>**
</payment>
<payment>
<account>1234</account>
<order>110000000002</order>
<amount>20.0</amount>
**<result>Record Failed</result>**
</payment>
</payments>
提前致谢。
答案 0 :(得分:0)
要在Output.xml中添加新标记,首先,您必须在MerchantPayments类中添加以下属性对应的setter / getter方法。
@XmlElement(name = "result")
private String result;
解组后,您将获得 MpObj ,您必须将&#34;记录失败&#34; 文本设置为结果字段。现在,您可以编组MpObj并在Output.xml中获得所需的输出。