SAP Hana
テスト
SAP Hana を使用してテストする場合、src/test/resources/application-test.yaml の platform を hana に設定します。
application-test.yaml がまだ存在しない場合は ドキュメント / テスト を参照してください。
ebean:
test:
platform: hana # h2, postgres, mysql, oracle, sqlserver
ddlMode: dropCreate # none | dropCreate | migrations
dbName: test
上記では、次のデフォルトが使用されます
| ユーザー名 | SYSTEM |
|---|---|
| パスワード | HXEHana1 |
| データベース名 | HXE |
| ポート | 39017 |
| URL | jdbc:sap://:{port}/?databaseName={databaseName} |
| ドライバー | com.sap.db.jdbc.Driver |
| イメージ | store/saplabs/hanaexpress:{version} |
ebean-hana 依存関係
Hana 固有のプラットフォーム コードのみを取り込む場合は、io.ebean:ebean の代わりに io.ebean:ebean-hana 依存関係を使用できます。io.ebean:ebean に依存すると、すべてのプラットフォームが取り込まれます。
Docker コンテナー
Hana の Docker コンテナー バージョンをプログラムで開始できます。
下記では、ebean-test にすでに付属している ebean-test-docker 依存関係を使用しています。ebean-test に依存していない場合は、依存関係として io.ebean:ebean-test-docker:5.0 を追加します。
package main;
import io.ebean.docker.commands.HanaContainer;
public class Main {
public static void main(String[] args) {
HanaContainer.Builder builder = HanaContainer.newBuilder("2.00.033.00.20180925.2");
builder.port(39117);
builder.instanceNumber("91");
try {
builder.passwordsUrl(new URL("file:///hana/mounts/" + this.passwordsFile.getFileName()));
} catch (MalformedURLException e) {
fail(e.getMessage());
}
builder.mountsDirectory(this.tempDir.toString());
builder.agreeToSapLicense(false);
HanaContainer container = builder.build();
container.start();
}
}