Entity Framework を使用して SQLite に migration するまで

今回の検証内容のリポジトリ 今回作成する Models の ER図(dbdiagram.io) dotnet ef migrations script により作成した DDL から生成 セットアップ まずは、3系の sdk を使用して .NET Core で開発できるようセットアップします。 dotnet --list-sdks # sdk …

reverse proxy として nginx をコンテナ起動し、 Spring Boot Application と連携する

nginx を reverse proxy としてコンテナ起動する際に、 http://host.docker.internal:8081/ と設定している意味について検証したメモ。 今回の検証内容のリポジトリ アーキテクチャのイメージ localhost:8081 で起動している Spring Boot で作成したアプリケ…

Spring Boot で MongoDB をつかってみる

NoSQL 触ったことがなかったので、 Spring Boot で MongoDB を使用してみます。 今回の検証内容のリポジトリ まずは、ローカル開発は Docker でやるために、Mongo のコンテナを起動します。 というかこの点に関してハマった点をまとめるエントリーです。 ま…

@RequestBody をつけたら request body is missing のエラーになった

POST メソッドを受け付ける Controller に @RequestBody を付与した際に、タイトルの通りのエラーに遭遇したためメモ。 今回の検証内容のリポジトリ @PostMapping のアノテーションがついたメソッドに @RequestBody を付与することで同じ状況にできる 2021-0…

flyway × postgres × jpa のid自動採番がうまくいかないときの対処法

entity を JPA により永続化する際に primary key の自動採番に苦戦したためメモ。 今回の検証内容のリポジトリ JPA により DML,DDL を用意 以下のような、いたってシンプルな entity を用意する。 @Entity public class Todo { @Id private Long id; privat…

postgres のコンテナ起動時の設定について

コンテナ起動時に初期DBを作成済みにする をモチベーションに environment の設定に関して理解を深めるために動作検証したのでメモ。 ドキュメントの設定値を参考に検証。 今回の検証内容のリポジトリ TL;DR ローカル開発なのでロールを気にしない カスタム…

Application Context へのさまざまな Bean 登録の方法

様々な Bean 登録の方法を確認する。 今回の検証内容のリポジトリ まずはベーシックな @ComponentScan により Application context に登録する方法。 public static void main(String[] args) { var context = new AnnotationConfigApplicationContext(Confi…

Spring Boot で main class が複数ある場合のエラー

Spring Boot を実行した際に遭遇したエラー。 今回の検証内容のリポジトリ ./mvnw spring-boot:run [ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:2.4.1:run (default-cli) on project non-web: Execution default-cli…

Tomcat への war デプロイをコンテナで行う

今回の検証内容のリポジトリ コンテナを利用して、手軽に WARファイル(.war) をデプロイして動作を検証する環境を作りました。 README.md に記載のように、以下の流れで .war の動作を検証できます。 コンテナを立ち上げて、 $ docker-compose up -d $ docke…

Bean Lifcycle の確認2

前回の実装に加えて、ライフサイクル内でのカスタムの処理を確認します。 今回の検証内容のリポジトリ メインメソッドはBean定義を行い、 Bean1 をDIコンテナから取得(ルックアップ)して使用した後に、DIコンテナを消去。 前回の検証と同様のものです。 publ…

Bean Lifcycle の確認

今回の検証内容のリポジトリ Lifecycle の説明は こちら の記事が Spring の実装にも言及しており、わかりやすかった。 今回は、ライフサイクル内にカスタムの実装を行い挙動を確かめてみる。 まずは、コンフィギュレーションクラス(Bean定義を行うクラス)を…

AnnotationConfigApplicationContext に profile をセットして使用する

今回の検証内容のリポジトリ ComponentScan の設定を記載したクラスを用意。 @ComponentScan("com.diExperiment") public class AppConfig { } 他のクラスと依存している ProductPriceListReportService のコンストラクタ。 インターフェースである PriceLis…