我需要生成 XML 它们只在标签包含的值上不同。是否可以创建模板 XML 然后每次只写值(我不想去公园 JAXB 因为这些都很小 XML 不值得为它们创建对象)。这是个好办法吗?有什么想法吗?
XML
JAXB
yr9zkbsy1#
只要要生成的xml文件很小、很简单并且格式基本一致,我就倾向于逆势而行:我只需创建并编写一个文本字符串。
writer.out.format("<?xml version='1.0'><root><tag1>%s</tag1></root>", value1)
差不多吧。
zaqlnxep2#
尽管您反对jaxb(我还没有使用jaxb),但我还是希望推荐一种类似的方法来使用apache的xmlbeans。这要求您使用xml模式-但根据我的经验,这是值得的。。。
q3qa4bjr3#
您可以使用freemarker或velocity在java中进行模板化,甚至只需将php标记添加到示例xml中即可从模板生成。不过,我认为,作为一般规则,一旦开始有条件地添加元素或属性,或者循环生成多个元素,就最好生成xml——尽管我同意,有时将xml转换为您想要的格式(而不是生成器想要的格式)有时是件痛苦的事。
3条答案
按热度按时间yr9zkbsy1#
只要要生成的xml文件很小、很简单并且格式基本一致,我就倾向于逆势而行:我只需创建并编写一个文本字符串。
差不多吧。
zaqlnxep2#
尽管您反对jaxb(我还没有使用jaxb),但我还是希望推荐一种类似的方法来使用apache的xmlbeans。
这要求您使用xml模式-但根据我的经验,这是值得的。。。
q3qa4bjr3#
您可以使用freemarker或velocity在java中进行模板化,甚至只需将php标记添加到示例xml中即可从模板生成。
不过,我认为,作为一般规则,一旦开始有条件地添加元素或属性,或者循环生成多个元素,就最好生成xml——尽管我同意,有时将xml转换为您想要的格式(而不是生成器想要的格式)有时是件痛苦的事。