我有一个查询,在 SQL Server 2005/2008 中执行,它以 XML
格式提供输出。
以下是生成 xml 输出的示例查询:
SELECT
(SELECT 'White' AS Color1,
'Blue' AS Color2,
'Black' AS Color3,
'Light' AS 'Color4/@Special',
'Green' AS Color4,
'Red' AS Color5
FOR XML PATH('Colors'),TYPE),
(SELECT 'Apple' AS Fruits1,
'Pineapple' AS Fruits2,
'Grapes' AS Fruits3,
'Melon' AS Fruits4
FOR XML PATH('Fruits'),TYPE)
FOR XML PATH(''),ROOT('SampleXML')
我需要的是,读取Java中的输出,将其转换为java.io.File
格式,这样我就可以解析和填充对象。
我尝试过:SQLXML sqlxml = resultSet.getSQLXML(column);
,在 here 中给出
但它抛出异常:线程“main”java.lang.AbstractMethodError中的异常:com.inet.pool.g.getSQLXML(I)Ljava/sql/SQLXML;
请建议我一种读取该文件的方法。
请注意:我可以使用resultSet.getString(column)
将o/p读取为String
,但无法解析它。
最佳答案
SQLXML interface提供以字符串、Reader 或 Writer 或 Stream 的形式访问 XML 值的方法。将 sqlxml 放入二进制流并解析 xml
SQLXML sqlxml = resultSet.getSQLXML(column);
InputStream binaryStream = sqlxml.getBinaryStream();
关于java - 如何在JAVA中读取/导出从SQL Server输出的XML文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15244019/