1

我们的应用程序将其部分配置导出为一组 bean。配置的每个部分都包含多个相似的项目,每个项目都有一个名称

理想情况下,开发人员将单独导出每个项目,并以有意义的名称将它们签入我们的源代码管理。不幸的是,一些开发人员很懒惰,将整个列表导出为单个文件,然后签入类似“export.xml”的文件:(

我想处理这样一个 bean 文件并最终每个 bean 一个文件。有没有人做过这样的事情?我想我正在查看一个 xslt,但我不知道如何得到多个输出文件。

对于额外的信用:),我可以使用 bean 中指定属性的值来命名文件。

4

2 回答 2

0

回答我自己的问题。

可以使用以下 XLST 样式表在 XSLT 2.0 中完成:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:template match="/beans/bean" xml:space="preserve"> 
            <xsl:result-document href='file{translate(normalize-space(./property[@name="name"])," ", "_")}.xml'
            doctype-public="-//SPRING//DTD BEAN//EN"
            doctype-system="http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
    <xsl:copy-of select="." />
</beans>
            </xsl:result-document>
         </xsl:template>
</xsl:stylesheet>

这使用“name”属性的值来构造文件名。

于 2013-11-19T23:14:27.517 回答