そのため、私のWebアプリケーションは主にクライアントからサーバーへの対話にXMLを使用しており、現在、ほとんどのバックエンドをHibernateを使用して永続化しています。XMLデータベースがあり、DOM4JエンティティでSessionsを呼び出すことでHibernateを使用してXMLを保存できることは知っていますが、XMLを提供する最も効率的な方法が実際に何であるかはわかりません。オブジェクトがリクエストされるたびに、オブジェクトフィールドからXMLドキュメントを生成し、それを提供します。したがって、新しいリクエストごとに、まったく新しいXMLドキュメントを生成します。したがって、最初に要求されたときに各ランタイムサイクル中に各ドキュメントのXMLを生成し、それをオブジェクトのフィールドに格納して、それに対してXSLTコマンドを実行できるようにすることができますが、これは一種の非効率的なようです。私'
1334 次
2 に答える
0
リレーショナルデータベースの主な目的の1つは、重複を避けることです。ドキュメント間で共有されるオブジェクトがあり、それをXMLで各ドキュメントに保存する場合、共有オブジェクトを変更するときにすべてのドキュメントを更新する必要があります。
hibernateを使用して通常のリレーショナル方法でドキュメントオブジェクトフィールドを格納し、XMLマーシャラーを使用してXMLに変換し、xstreamやCXFなどに戻すことはかなり標準的な方法です。
于 2011-12-06T22:21:48.370 に答える
0
XMLをCLOBまたはBLOBとしてデータベースに格納できます。クエリを実行するときにドキュメントの内部を調べる必要がない場合は、キーフィールドを外部化して、それらに基づいてXMLをクエリできます。
于 2010-08-05T20:34:16.097 に答える