首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >字符串作为XQJ中的xml数据源

字符串作为XQJ中的xml数据源
EN

Stack Overflow用户
提问于 2014-01-25 00:11:10
回答 2查看 590关注 0票数 2

我想使用XQJ实现来解析我的XML字符串,例如SAXON。我能找到的所有例子都涉及到一些数据库连接。可以使用简单字符串作为xml源吗?

EN

回答 2

Stack Overflow用户

发布于 2014-01-25 01:52:35

Saxon有一个XQJ接口,您可以使用XQuery中的文档函数(),例如:

代码语言:javascript
复制
XQDataSource ds = new SaxonXQDataSource();
XQConnection conn = ds.getConnection();
XQPreparedExpression exp = conn.prepareExpression("doc('file:/some/file.xml')/child::node()");
XQResultSequence result = exp.executeQuery();
while(result.next()) {
    System.out.println(result.getItemAsString(null));
}

或者直接将XML注入到查询中。例如:

代码语言:javascript
复制
XQDataSource ds = new SaxonXQDataSource();
XQConnection conn = ds.getConnection();
XQPreparedExpression exp = conn.prepareExpression("<a><b>test</b></a>/child::node()");
XQResultSequence result = exp.executeQuery();
while(result.next()) {
    System.out.println(result.getItemAsString(null));
}
票数 1
EN

Stack Overflow用户

发布于 2014-01-25 07:47:57

尝试使用

代码语言:javascript
复制
void    XQExpression.bindDocument(javax.xml.namespace.QName varName, javax.xml.transform.Source value, XQItemType type) 

第一个参数是XQConstants.CONTEXT_ITEM,第二个参数是包装StringReadeer的StreamSource。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21337288

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档