エンティティの構築
新しいJHipsterアプリケーションの作成については、ビデオチュートリアルを参照してください。
JavaScript/TypeScriptコードの「ライブリロード」を行いたい場合は、npm start
を実行する必要があります。詳細については、開発でのJHipsterの使用ページにアクセスしてください。
はじめに
アプリケーションを作成したら、エンティティ を作成します。たとえば、著者 エンティティと 本 エンティティを作成するとします。エンティティごとに、次の要素が必要です。
- データベーステーブル
- Liquibaseチェンジセット
- JPAエンティティ
- Spring Data JPAリポジトリ
- 基本的なCRUD操作を備えたSpring MVC RESTコントローラ
- Angularルータ、コンポーネント、サービス
- HTMLビュー
- すべてが期待どおりに動作することを検証するための統合テスト
- すべてがスムーズに動作するかどうかを確認するためのパフォーマンステスト
複数のエンティティがある場合は、エンティティ間にリレーションシップを設定する必要があります。そのためには、次の要素が必要です。
- データベース外部キー
- このリレーションシップを管理するための特定のJavaScriptおよびHTMLコード
"エンティティ"サブジェネレータは、必要なファイルをすべて作成し、エンティティごとにCRUDフロントエンドを提供します(Angularプロジェクトの構成およびReactプロジェクトの構成を参照)。サブジェネレータは、jhipster entity <entityName> --[options]
を実行することで呼び出すことができます。これらのオプションの参照は、jhipster entity--help
と入力する ことで見つけることができます。
サポートされているオプションは次のとおりです。
--table-name <table_name>
- デフォルトでは、JHipsterはエンティティ名に基づいてテーブル名を生成します。別のテーブル名が必要な場合は、このオプションを渡すことで生成できます--angular-suffix <suffix>
- すべてのAngularルートにカスタム接尾辞を付けたい場合は、このオプションを使用してそれを渡すことができます--client-root-folder <folder-name>
- クライアント側のエンティティにルートフォルダ名を使用します。デフォルトでは、モノリスの場合は空で、ゲートウェイの場合はマイクロサービスの名前です--regenerate
- 何も質問せずに既存のエンティティを再生成します--skip-server
- サーバ側のコードをスキップし、クライアント側のコードのみを生成します--skip-client
- クライアント側のコードをスキップし、サーバ側のコードのみを生成します--skip-db-changelog
- データベース変更ログの生成をスキップします(SQLデータベースにはLiquibaseを使用します)--db
- サーバ側の生成をスキップする場合にデータベースを指定します。それ以外の場合の影響はありません
エンティティに短い名前を付けないでください(このチケットを参照)。
JHipster UMLとJDL Studio
このページでは、標準のコマンドライン・インタフェースを使用してJHipsterでエンティティを作成する方法について説明します。多数のエンティティを作成する場合は、グラフィカル・ツールを使用することをお薦めします。
この場合、次の2つのオプションを使用できます。
- JHipster UML:UMLエディタを使用できます。
- JDL Studio:ドメイン固有の言語JDLを使用してエンティティとリレーションシップを作成するためのオンライン・ツールです。
JDL Studioを使用した場合は以下の通りです。
-
jhipster jdl your-jdl-file.jh
を実行することにより、jdl
サブジェネレータを使用してJDLファイルからエンティティを生成できます。- JDLのインポート中にエンティティを再生成しない場合は、
--json-only
フラグを使用してエンティティ作成部分をスキップし、.jhipster
フォルダにjsonファイルのみを作成できます。
jhipster jdl ./my-jdl-file.jdl --json-only
- デフォルトでは、
jdl
は変更されたエンティティのみを再生成します。すべてのエンティティを再生成したい場合は、--force
フラグを渡してください。これにより、エンティティファイルに対するローカルの変更がすべて上書きされることに注意してください。
jhipster jdl ./my-jdl-file.jdl --force
- JDLのインポート中にエンティティを再生成しない場合は、