如何在HSQLDB表列中以String形式保存XML数据

问题描述

我有一个 webservice 客户端,它为字符串形式的 xml 数据调用 Webservice-A。客户端以字符串形式接收 xml 数据。线程需要将相同的 xml 数据以字符串形式推送到另一个 Webservice-B。 我们需要的是在通过线程将其推送到 Webservice-B 之前将这些 xml 数据保存在 hsqldb 表列中。我检查了包含 XML 的 HsqlDB 支持的数据类型,但是当我将列的数据类型设置为 XML 时,无法创建表。 请指导。

解决方法

您使用 LONGVARCHAR 或 CLOB 列创建表并将 XML 数据存储在那里。

对于您的用法,您只需使用 PreparedStatement 的 setString() 方法和 RasultSet 的 getString() 方法来插入和检索 XML。

仅当需要访问字段或创建 XML 数据时,才使用 ResultSet 的 getSQLXML() 方法和 Connection 的 createSQLXML() 方法。