Derby In-memory-database と H2 in-memory-database を使用できます。それらは良いです.しかし、H2はより良いパフォーマンスを持っています. H2 には Web コンソール GUI があり、Derby には Eclipse プラグイン GUI があります。あなたはそれを試すことができます。私はプロジェクトでそれらを使用しました。H2 データベースには SO にタグがあり、その作成者が SO でサポートします。埋め込みモードの代わりにサーバーモードを使用するには、fredit が適していると思います。しかし、彼の URL は正しくないようです。少なくとも mem を使用する必要があります。Derby の場合、URL は jdbc:derby://myhost:1527/memory:myDB;create=true です。これは、H2 jdbc:h2:tcp://localhost/mem:db1 の URL の例です。
クライアントがネットワークから接続できるように、サーバーモードを使用する必要があります。注意が必要なことの1つは、メモリモードではメモリ内にあるため、Javaプロセスが終了するとJVMが存在せず、DB内のデータも失われることです。しかし、テストの場合、それは利点になります。テストデータをクリアする必要はありません。
H2 には、テスト目的のための非常に優れた機能があります。IBM DB2、Apache Derby、HSQLDB、MS SQL Server、MySQL、Oracle、および PostgreSQL と互換性のある SQL を実行する SQL サポートがあります。つまり、MS SQL Server で特別な SQL を使用しても、H2 で同じ結果を得ることができます。きっと気に入っていただけると思います。
リンク
HSQL がメモリ モードであることは知っていますが、使用したことはありません。
幸運を。
アップデート
代わりにテスト ケースにクエリを記述すれば、結果が返されると思います。私は自分のテストケースでこれをたくさんしました。テストケースでJDBC接続を作成する限り、埋め込みモードでも。これが不便だと感じる場合は、データ出力をファイルにダンプすることもできます。ただし、テスト ケースでデータを HSQL にロードする必要がある場合は、BeforeClass を使用して実行できます。これができない場合は、サーバーを使用する必要があります。モード。
hsql は、サーバー メモリ モードの JDBC url で少し異なるようです
詳細については、 http://hsqldb.org/doc/guide/guide.html#N108D2接続を参照して
ください。
いくつかのサーバー構成に対処する必要があります。
@Rachel、メモリ内モードでサーバーモードをセットアップするのに役立つリンクを最後に見つけました。これを見てください。少し複雑です。
「メモリのみの HSQLDB をサーバー モードで実行する」
ノート
2 番目のリンクでは、正しく接続する方法が詳しく説明されていませんでした。だから最初のものを試してみてください。