本文整理了Java中javax.xml.xquery.XQPreparedExpression.close()
方法的一些代码示例,展示了XQPreparedExpression.close()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。XQPreparedExpression.close()
方法的具体详情如下:
包路径:javax.xml.xquery.XQPreparedExpression
类名称:XQPreparedExpression
方法名:close
[英]Closes the expression object and release all resources associated with this prepared expression. This also closes any result sequences obtained from this expression. Once the expression is closed, all methods on this object other than the close
or isClosed
will raise exceptions. Calling close on an XQExpression
object that is already closed has no effect.
[中]关闭表达式对象并释放与此准备好的表达式关联的所有资源。这也会关闭从此表达式获得的所有结果序列。表达式关闭后,除了close
或isClosed
之外,此对象上的所有方法都会引发异常。对已关闭的XQExpression
对象调用close没有效果。
代码示例来源:origin: org.mule.modules/mule-module-xml
@Override
public void destroyObject(Object o) throws Exception
{
((XQPreparedExpression) o).close();
super.destroyObject(o);
}
}
代码示例来源:origin: spring-projects/spring-integration-extensions
expression.close();
conn.close();
} catch (XQException e) {
代码示例来源:origin: dsukhoroslov/bagri
private long storeXmlDocument(String fileName) throws XQException {
String dName = "..\\..\\etc\\samples\\tpox\\";
String xml;
try {
xml = readTextFile(dName + fileName);
} catch (IOException ex) {
throw new XQException(ex.getMessage());
}
String query = "declare namespace bgdb=\"http://bagridb.com/bdb\";\n" +
"declare variable $sec external;\n\n" +
//"return bgdb:store-document($sec)\n";
"for $id in bgdb:store-document($sec)\n" +
"return $id\n";
XQPreparedExpression xqpe = xqc.prepareExpression(query);
xqpe.bindString(new QName("sec"), xml, xqc.createAtomicType(XQItemType.XQBASETYPE_STRING));
XQSequence xqs = xqpe.executeQuery();
if (xqs.next()) {
long result = xqs.getLong();
xqpe.close();
return result;
} else {
xqpe.close();
throw new XQException("no response from store-document function");
}
}
代码示例来源:origin: dsukhoroslov/bagri
if (xqs.next()) {
long id = xqs.getLong();
xqpe.close();
xqs.close();
return id;
} else {
xqpe.close();
xqs.close();
throw new XQException("no response from store-document function");
代码示例来源:origin: dsukhoroslov/bagri
@Override
public void deleteDocument(String uri) throws XQException {
String query = "declare namespace bgdb=\"http://bagridb.com/bdb\";\n" +
"declare variable $uri external;\n" +
"let $uri := bgdb:remove-document($uri)\n" +
"return $uri\n";
XQPreparedExpression xqpe = xqConn.prepareExpression(query);
xqpe.bindString(new QName("uri"), uri, xqConn.createAtomicType(XQItemType.XQBASETYPE_ANYURI));
XQSequence xqs = xqpe.executeQuery();
String result = null;
try {
if (xqs.next()) {
result = xqs.getAtomicValue();
}
if (!uri.equals(result)) {
throw new XQException("got no result from bgdb:remove-document function");
}
} finally {
xqpe.close();
xqs.close();
}
}
代码示例来源:origin: spring-projects/spring-integration-extensions
try {
if(expression != null) {
expression.close();
代码示例来源:origin: dsukhoroslov/bagri
xqpExp.close();
代码示例来源:origin: dsukhoroslov/bagri
@Override
protected int execQuery(String query, Map<String, Parameter> params) throws XQException {
XQPreparedExpression xqpe = getConnection().prepareExpression(query);
bindParams(params, xqpe);
XQResultSequence xqs = xqpe.executeQuery();
int cnt = 0;
if (fetchSize > 0) {
while (xqs.next() && cnt < fetchSize) {
cnt++;
}
} else {
while (xqs.next()) {
cnt++;
}
}
//xqs.close(); will be closed at next line
xqpe.close();
return cnt;
}
代码示例来源:origin: dsukhoroslov/bagri
@ManagedOperation(description="Parse XQuery. Return array of parameter names, if any")
@ManagedOperationParameters({
@ManagedOperationParameter(name = "query", description = "A query request provided in XQuery syntax"),
@ManagedOperationParameter(name = "props", description = "Query processing properties")})
public String[] parseQuery(String query, Properties props) {
XQPreparedExpression xqpExp = null;
try {
XQStaticContext ctx = xqConn.getStaticContext();
props2Context(schemaManager.getEntity().getProperties(), ctx);
props2Context(props, ctx);
xqpExp = xqConn.prepareExpression(query, ctx);
QName[] vars = xqpExp.getAllExternalVariables();
String[] result = null;
if (vars != null) {
result = new String[vars.length];
for (int i=0; i < vars.length; i++) {
result[i] = vars[i].toString();
}
}
xqpExp.close();
return result;
} catch (XQException ex) {
logger.error("parseQuery.error", ex);
throw new RuntimeException(ex.getMessage());
}
}
代码示例来源:origin: dsukhoroslov/bagri
xqpe.close();
xqs.close();
内容来源于网络,如有侵权,请联系作者删除!