ホームページ > Java > &#&チュートリアル > Java と Spring Boot を使用して Postgres データベース用の REST API を生成する

Java と Spring Boot を使用して Postgres データベース用の REST API を生成する

Linda Hamilton
リリース: 2025-01-06 22:21:40
オリジナル
439 人が閲覧しました

このチュートリアルでは、monstarillo を使用して Postgres データベース用の Java API を生成する方法を説明します。 API は Spring Boot と Springdoc を使用して文書化します。 API は、実行対象のテーブルに対して CRUD 操作を実行します。 API の単体テストも生成されます。
このチュートリアルを進めるには、次のものが必要です:

monstarillo がインストールされました。
Postgres データベース – chinhook データベースを使用します。 Docker で Chinhook サンプル Postgres データベースをセットアップする
Java がインストールされています
Java IDE – InteliJ
を使用します。 Git

最初のステップは、API の生成に使用するテンプレートを取得することです。これを行うには、リポジトリ共有テンプレートのクローンを作成します。使用するテンプレートは java-api フォルダーにあります。
Monstarillo に生成されたコードを配置する場所を指示します
次に、生成されたコードをどこに配置するかを決定する必要があります。 Docker 経由で Monstarillo を実行します。 Monstarillo を実行している Docker イメージにディレクトリ ~/shared-volume を公開します。リポジトリのクローンを作成することによって作成された共有テンプレート フォルダーは、~/shared-volume フォルダーにあります。 ~/shared-volume/code-gen-output にコードを生成します。 Monstarillo は、コードを生成するときに code-gen-output フォルダーを作成します。

templates.json ファイルを変更します
Monstarillo は、json ファイルを使用して、実行するテンプレート、実行方法、生成するファイルの名前と配置場所を指示します。ファイル java-api/postgres/templates.json を変更します。 templates.json ファイル内のテンプレート配列は、Monstarillo にどのテンプレートを実行するか、作成するファイルの名前と配置場所を指示します。 templates.json ファイル内のタグ配列は、テンプレートや templates.json で使用されるいくつかの「タグ」を定義します。たとえば、Pac​​kagePath は templates.json ファイルで何度も使用されます。 PackagePath は多くのテンプレートで使用されますが、タグを使用すると一度定義できます。テンプレートを実行するには、タグ配列内の TemplateRoot タグと OutputPath タグを変更する必要があります。

*TemplateRoot * – テンプレート ルートは、複製したリポジトリ内の java-api フォルダーを指す必要があります。
*OutputPath * – 出力パスは、Monstarillo が生成したファイルを配置するフォルダーを指す必要があります。フォルダーがまだ存在しない場合は、Monstarillo によって作成されます。
*PackageBase * – クラスでパッケージを設定するために使用されます
*ArtifactId * – 生成された POM.xml
で使用されます *GroupId * – 生成された POM.xml
で使用されます *ApplicationClassName * – 生成されたアプリケーションのメインクラスの名前として使用されます
*ModelPropertySurrondString * – アプリケーションのモデルを生成するテンプレートで使用されます。これは、列名がキャメルケースである場合に便利です。

Generate a REST API Using Java and Spring Boot for your Postgres database
Docker で Monstarillo を実行しているので、タグを次のように設定します。

{
   "tagName": "TemplateRoot",
   "value": "/usr/local/monstarillo/shared-templates/java-api"
},
{
   "tagName": "OutputPath",
   "value": "/usr/local/monstarillo/code-gen-output/java-01"
}
ログイン後にコピー

Monstarillo をローカルで実行している場合、タグを次のように設定します。

{
   "tagName": "TemplateRoot",
   "value": "/home/patrick/code/patrick-templates/java-api"
},
{
   "tagName": "OutputPath",
   "value": "/home/patrick/code-gen-output/java-01"
}
ログイン後にコピー

Monstarillo を実行してコードを生成します
次に、Monstarillo を実行してコードを生成するコマンドを構築します。 Monstarillo に Postgres データベースを使用していることを伝え、接続情報を提供する必要があります。また、前に設定した template.json ファイルの場所を渡して、どのテンプレートを実行するかを Monstarillo に指示する必要があります。

Docker で Monstarillo を実行するには、コマンドは次のようになります:

docker run --volume=/mnt/c/code:/usr/local/monstarillo \
--network=host \
monstarillo/monstarillo:latest postgres \
--t /usr/local/monstarillo/shared-templates/java-api/postgres/templates.json  \
--u postgres \
--p <Your Database Password> \
--db "chinhook-db" \
--host "localhost" \
--schema "public"
In this command I am mounting /mnt/c/code to the docker image as /usr/local/monstarillo that is running monstarillo. My shared-templates folder is at /mnt/c/code/shared-templates and will be generating code to /mnt/c/code/code-gen-output/java-01
ログイン後にコピー

Monstarillo をローカルで実行している場合、コマンドは次のようになります:

monstarillo postgres \
--t /home/patrick/code/patricks-monstarillo-templates/java-api/templates.json  \
--u postgres \
--p <Your Database Password>\
--db "chinhook-db" \
--host "localhost" \
--schema "public"
ログイン後にコピー

コマンドを実行すると、出力は次のようになります:

Generate a REST API Using Java and Spring Boot for your Postgres database
Monstarillo が各テーブル名を出力し、それが実行されることに注目してください。この情報を使用して、コマンドのエラーをトラブルシューティングできる場合があります。

生成されたコードを表示する
次に、選択した IDE で選択した出力ディレクトリを開いてコードを表示できます。

Generate a REST API Using Java and Spring Boot for your Postgres database

次に、生成されたコード内の application.properties ファイルを変更して、データベース接続情報を更新する必要があります。このファイルは src/main/resources/application.properties

にあります。

Generate a REST API Using Java and Spring Boot for your Postgres database

IntelliJ では、IDE で PersistApi クラスを開いて実行します。

Generate a REST API Using Java and Spring Boot for your Postgres database

新しい API が実行されており、テストできます。ポストマンを利用させていただきます。 http://localhost:8080/album

でアルバム コントローラーにアクセスできます。

Generate a REST API Using Java and Spring Boot for your Postgres database

http://localhost:8080/swagger-ui/index.html にアクセスして、生成されたコードの OpenAPI 定義を確認することもできます。

Generate a REST API Using Java and Spring Boot for your Postgres database

src/java/com.monstarillo.persist_api で生成された単体テストに注目してください

Generate a REST API Using Java and Spring Boot for your Postgres database

コメント欄でご意見をお聞かせください

以上がJava と Spring Boot を使用して Postgres データベース用の REST API を生成するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート