我偶然发现了Oracles XML DB功能,但到目前为止,从我的阅读来看,我只看到了JDBC实现的示例。
这是示例之一:
import oracle.xdb.XMLType;
...
PreparedStatement stmt = conn.prepareStatement(
"SELECT e.poDoc FROM po_xml_tab e" );
ResultSet rset = stmt.executeQuery();
while( rset.next() ) {
// get the XMLType
XMLType poxml = ( XMLType )rset.getObject( 1 );
// get the XML as a string...
String poString = poxml.getStringVal();
}
根据官方的 xml db 开发人员指南,可以选择以对象关系(结构化)格式存储数据。这让我觉得 XML DB 和 JPA 之间应该有一个几乎无缝的链接。也许我错过了什么,或者它根本不存在?
他们能一起工作吗?除了 JDBC 之外还有其他选择吗?或者我可以只对查询做 JPA,对 XML 做 JDBC 吗?
编辑:Oracle XML DB是否值得使用它?因为它看起来没有人使用它(根据到目前为止的观点和回应)。
您可以使用 JPA 中的 Oracle XDB 功能。 如果您有 XMLType 的列,则可以使用@Basic映射到字符串将其映射到 JPA 实体。
在 EclipseLink 中,您可以使用转换器将其映射到另一种数据类型,或使用 DirectToXMLTypeMapping 映射 DOM。
如果要将 XML 映射到对象,可以使用使用 JAXB 的转换器。