ElasticSearch
Ebean のドキュメント ストアとして ElasticSearch を使用するには、以下の例のような `ebean.docstore` プロパティの構成を追加する必要があります。
ElasticSearch Docker コンテナを使用してテストするには、以下の例のように `ebean.docstore.elastic.version` プロパティを設定します。これにより、ebean-test で ElasticSearch が Docker コンテナとして実行されていることを確認します。
ebean:
test:
platform: h2
ddlMode: dropCreate # none | dropCreate | migrations | create
dbName: myapp
docstore:
url: http://127.0.0.1:9201
active: true
generateMapping: true
dropCreate: true
elastic: # For testing using docker container
version: 5.6.0
port: 9201
ロギングに関して、以下のように表示できます。
21:57:06.587 INFO io.ebean.docker.commands.Commands - Start container ut_elastic with port:9201
ElasticSearch を単独で使用し、別のデータベースと一緒に使用しない場合は `ebean.test.platform` セクションを次のように除外します。
ebean:
docstore:
url: http://127.0.0.1:9201
active: true
generateMapping: true
dropCreate: true
elastic:
version: 5.6.0
port: 9201
ebean-elastic の依存関係
依存関係として `ebean-elastic` を追加します。
<dependency>
<groupId>io.ebean</groupId>
<artifactId>ebean-elastic</artifactId>
<version>13.0.0</version>
</dependency>
構成プロパティ
プロパティ | 説明 |
---|---|
ebean.docstore.active | true に設定して docstore の使用を有効にします。 |
ebean.docstore.url | ElasticSearch が使用する予定の URL。 |
ebean.docstore.generateMapping | true の場合、インデックス マッピングを生成します。 |
ebean.docstore.dropCreate | true の場合、インデックスを削除して再作成します。 |
ElasticSearch の 詳細については、こちらをご覧ください。
Docker コンテナ
プログラムを使用して、ElasticContainer の Docker コンテナ バージョンを開始できます。
以下では、`ebean-test` にすでに含まれている `ebean-test-docker` 依存関係を使用します。 `ebean-test` に依存関係がない場合は、`io.ebean:ebean-test-docker:5.0` を依存関係として追加します。
package main;
import io.ebean.docker.commands.ElasticContainer;
public class Main {
public static void main(String[] args) {
ElasticContainer container = ElasticContainer.newBuilder("5.6.0")
.build();
container.start();
}
}