1

org.w3c.dom.Documentオブジェクトをに変換java.sql.SQLXMLして、Hibernateを使用してデータベースに永続化できるようにするにはどうすればよいですか?現在、を介して文字列に変換することで機能させることができますjavax.xml.transform.Transformerが、最も効率の悪いアプローチだと思います。

次のことを試しましたが、DB列に何も保存されませんでした。

SQLXML sqlxml = session.connection().createSQLXML();
sqlxml.setResult(DOMResult.class).setNode(myDocument);
preparedStmt.setSQLXML(index, sqlxml);
4

1 に答える 1

1

実際、意図したとおりに機能していません。javax.xml.transform.sax.SAXResult代わりに使用して機能させてください。

SQLXML sqlxml = stmt.getConnection().createSQLXML();
SAXResult sax = sqlxml.setResult(SAXResult.class);
Transformer transformer = TransformerFactory.newInstance().newTransformer();
transformer.transform(new DOMSource(document), sax);
stmt.setSQLXML(index, sqlxml);
于 2012-10-30T13:50:50.690 に答える