質問

使っています 休止状態 Java アプリケーションでデータベースにアクセスすると、MS-SQL と MySQL で非常にうまく動作します。ただし、一部のフォームに表示する必要があるデータの一部はテキスト ファイルから取得する必要があります。テキスト ファイルとは人間が判読できるファイルのことを指します。CSV、タブ区切り、またはキーと値のペアを 1 行ごとに指定することもできます。私のデータはこれと同じくらい単純ですが、もちろん XML ファイルを好みます。

私の質問は次のとおりです。Hibernate を使用して、HQL、Query、EntityManager、およびファイルにアクセスするために Hibernate が提供するすべてのリソースを使用してこれらのファイルを読み取ることはできますか。ファイルをテーブルとして認識するにはどのファイル形式を使用すればよいですか?また、persistence.xml ファイルをどのように設定すればよいですか?

役に立ちましたか?

解決

Hibernate は JDBC API に対して書かれています。したがって、対象のファイル形式で動作する JDBC ドライバーが必要です。明らかに、読み取り専用アクセスの場合でも、これはパフォーマンスが良くありませんが、優先度が高くない場合にはそれでも役立つ可能性があります。Windows システムでは、区切り文字で区切られたテキスト ファイル、Excel ファイルなどの ODBC データソースをセットアップできます。次に、このデータ ソースを使用するように Java アプリケーションで JdbcOdbcDriver をセットアップできます。

私が取り組んでいるほとんどのアプリケーションでは、このアプローチは考慮しません。実際のデータベース (Berkeley DB や Derby などのインプロセス データベースであっても) からテキスト ファイルに変換するには、インポート/エクスポート メカニズムを使用します。はい、これは追加の手順ですが、自動化することができ、テキスト ファイルを直接使用するよりもパフォーマンスがそれほど低下する可能性は低く (全体的にははるかに優れている可能性があります)、より堅牢で、開発が簡単です。

他のヒント

グーグルで簡単に思いついたのは

これが何らかのインスピレーションを与えることを願っていますか?

エリクソン氏が言ったように、唯一の希望は、そのタスク用の JDBC ドライバーを見つけることです。もしかしたらあるかもしれない xlsql (CSV、XML、および Excel ドライバー) タスクに適合する可能性があります。その後は、ドライバーに適合する最も単純な Hibernate Dialect を見つけるか作成するだけです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top