XQJ,也即XQuery API for Java。XQJ就是用Java实现的一个包,其中包含了很多接口和类,使用XQJ可以查询单独的XML文档或XML文档集合。这么说可能大家有点晕,打个比方,XQJ对于XQuery就像JDBC Java API对于SQL,XQJ提供了XQuery的Java实现,使我们多了一个操作XML文档的方式。
现在实现XQJ的主要有两个框架,Qexo和Saxon,对与Qexo不甚了解。而Saxon可以同时在Java和。net中使用。
Saxon可以到http://saxon.sourceforge.net/ 下载。
使用Saxon操作XML文档的简单例子:
这个例子很简单,通过一个简单的查询语句查询XML文档,并以String形式输出,使用Saxon,首先需要创建源XQDataSource,
然后获得连接执行查询操作。对于提取查询的结果数据,有多种方法,上面例子中的就是一种,我们还可以通过熟悉的SAX
方式操作。
实现类似上面的函数,然后将前面例子的提取查询结果部分改为:
reader=result.getItemAsStream();
formatOutput(reader);
这样即可。