【问题标题】:XML transformation with xsl and DB query使用 xsl 和 DB 查询进行 XML 转换
【发布时间】:2011-04-05 12:08:04
【问题描述】:

我正在使用 Java 使用 Transformer 类转换 xml 文件。我将样式表 (xls) 文件与输入 xml 文件一起传递给转换器,这给了我一个转换后的输出 xml 文件。

同时我还需要查询一个数据库并将一些额外的数据从数据库中插入到 XML 文件中,所以我使用 JDBC 和 xQuery 连接到 Oracle 数据库并查询关系表。在 ResultSet 中,我得到 XML 格式的 ROWS。

我的计划是将这些行作为参数传递给 Java Transformer,并在转换过程中将此数据插入适当的位置。该参数将包含几行,并且 O 需要在要插入的转换期间选择特定行。这行得通吗?

我尝试将 ResultSet 转换为 XMLType,但失败了。我可以将 ResultSet 转换为另一种对象类型并将其用作 Transformer 的参数吗?

我希望这是有道理的。非常感谢您提前回答!

【问题讨论】:

  • 您是否在询问您的 XSLT 处理器允许您的宿主语言(Java?)中的哪种数据类型作为参数?您使用的是什么 XSLT 处理器?
  • 我编辑了我原来的问题。我希望它更有意义。我的宿主语言是 Java。我想我需要一种可以使用的特定类型。

标签: sql oracle xslt xmltype


【解决方案1】:

我设法将 ResultSet 转换为 OracleResultset,然后从中创建一个 XMLType。

ResultSet rset = stmt.executeQuery();
OracleResultSet orset = (OracleResultSet) rset;
XMLType qRes = XMLType.createXML(orset.getOPAQUE(1));

这带来了其他问题,我将单独提出。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-15
    • 2013-02-05
    • 2014-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多