首先,我使用xjc命令生成一个名为“Site”的Java类,它与我提供的xsd文件相关联。该命令还创建了一个ObjectFactory类。
我想要创建的XML文件相当混乱,所以我想知道是否有一种简单的方法可以做到这一点。
XML看起来像:
<?xml version="1.0"?>
<Sites>
<Site id="1" name="SA" loc="C">
<Hosts>
<Host id="11">
<Host_Name>fd</Host_Name>
<IP_address>10.2</IP_address>
</Host>
<Host id="12">
<Host_Name>rq</Host_Name>
<IP_address>10.1</IP_address>
</Host>
</Hosts>
</Site>
<Site id="2" name="QA" loc="H">
<Hosts>
<Host id="11">
<Host_Name>fd</Host_Name>
<IP_address>10.2</IP_address>
</Host>
<Host id="12">
<Host_Name>rq</Host_Name>
<IP_address>10.1</IP_address>
</Host>
</Hosts>
</Site>
</Sites>
通过xjc命令生成的ObjectFactory是:
@XmlRegistry
public class ObjectFactory {
/**
* Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: src
*
*/
public ObjectFactory() {
}
/**
* Create an instance of {@link Site }
*
*/
public Site createSite() {
return new Site();
}
/**
* Create an instance of {@link Site.Hosts }
*
*/
public Site.Hosts createSiteHosts() {
return new Site.Hosts();
}
/**
* Create an instance of {@link Site.Hosts.Host }
*
*/
public Site.Hosts.Host createSiteHostsHost() {
return new Site.Hosts.Host();
}
}
现在我想以某种方式生成上面的xml文件,但是对于我来说,如何从ObjectFactory类中做到这一点并不明显(或者如果我甚至不愿意使用它)。
我正在阅读格式为:
的数据文本文件site_id, name, loc, host_id, h_name, ip
10, dfsd, fdsa, 32, fd, 10
11, dffdsa, fdre, 33, fs, 11
我不确定如何生成XML树。我应该使用提供的ObjectFactory类吗? (它看起来看起来不会有任何帮助......)。
否则,我考虑循环遍历文本文件以创建“站点”对象列表,然后以某种方式以XML格式输出它。但是,如果有任何更容易的建议,请制作它们。