【发布时间】:2014-02-13 22:48:50
【问题描述】:
我在尝试使用 XML 作为参数之一进行 SQL 插入时遇到问题。
我的平台: 爪哇 7 赢 7 JTDS JDBC 驱动程序 SQL 服务器 Spring JDBC 4.0
我试过这个(来自 Spring 文档中的一个例子):
Jdbc4SqlXmlHandler handler = new Jdbc4SqlXmlHandler();
SqlXmlValue value = handler.newSqlXmlValue(doc_);
return _jdbcTemplate.update(createSQL, new Object[] {userID_, value});
doc_ 是传递给方法的 org.w3c.dom.Document
createSQL 是:
private final static String createSQL = "insert into " + TABLE_NAME + " (USER_ID, DOC) values (?, ?) ";
当 AbstractJdbc4SqlXmlValue.cleanup()(在 Jdbc4SqlXmlHandler 中)在 xmlObject var 上调用 free 时,我得到一个空指针异常:
public void cleanup() {
try {
this.xmlObject.free();
}
catch (SQLException ex) {
throw new DataAccessResourceFailureException("Could not free SQLXML object", ex);
}
}
xmlObject 为空,但在 Jdbc4SqlXmlHandler 中有对文档的引用
我做错了什么,但我没有看到。
谢谢。
【问题讨论】:
标签: java sql-server spring jdbc