依存関係のないJavaライブラリを作成したいのですが、埋め込みSQLデータベースを使用する必要があります。バイナリデータベースファイルとドライバの両方をパッケージ化して、JARファイル内のファイルにアクセスすることをお勧めしますか?利点と欠点は何ですか?SQLデータベースをJAR内にパッケージ化することをお勧めしますか?
3
A
答えて
3
たとえば、Hibernateで広く採用されている手法です。メモリに制約のあるデバイスについては
:
その後まったく組み込みデータベースを使用しないでください。 ThoughtWorksライブラリXStreamを使って、オブジェクトをファイルに格納できるXML/jSonにシリアル化/逆シリアル化してみてください。小さなメモリフットプリントで非常に効果的なソリューション。
4
より多くのJavaアプリケーションは、アプリケーションの起動時に起動され、独自の「インメモリ・データベース」を持っています。 hsqldbの例を参照してください。 最も明白な利点は、データベースを制御し、異なるDBサーバーとそのSQL方言を考慮する必要がないことです。
0
データベースは読み取り専用です(実行時にjarを再パッケージ化できないため)。もしそれがうまくいけば、ナッツを入れてください:)
私はレコードを検索する必要があるからです( 'SELECT description FROM table WHERE name LIKE '%...%''種類のクエリ)。 XStreamはそのような機能を提供しますか?それとも、SQLでなくても、このためのメモリ効率的なソリューションはありますか? – rid
いいえ、そのような機能を提供しません。 –