Java,プログラミング

やりたいこと

Spring BootプロジェクトでDBなどでよく使われるロウワーキャメルケース(例: user_name)の文字列をJavaの変数名でよく使われるロウワーキャメルケースへ変換する。

Guavaを使えば簡単Guava ...

Java,Spring,プログラミング

Mockitoを使うとエラーハンドラのテストが作成しやすい

Spring MVCでWeb APIを作成する場合@RestControllerAdviceを使ってエラーハンドラを作成することがあると思います。このエラーハンドラで想定通りに ...

Java,Spring,プログラミング

@RestControllerAdviceを使った例外処理

Spring MVCを使ってWeb APIを作成する際に、@RestControllerAdviceを使うことで共通のエラーハンドラを簡単に作成することができます。

Java,プログラミング

@Builderを使うと簡単にビルダパターンを実装できる

Lombokの@Builderをクラスにつけることによりビルダパターンを実装することができます。@Builderをつけただけはセッターが作成されないため@Valueと組み合わせて ...

Java,プログラミング

@AllArgsConstructor使用時にファクトリメソッドを生成する

Lombokで全てのフィールド変数を引数に持つコンストラクタを生成したい場合は以下の例のように@AllArgsConstructorを使います。

//im ...

Java,Spring,プログラミング

やりたいこと

Spring MVCの@RestControllerを使って作成したWeb APIに対する認証、認可をリクエスト中のAuthorizationヘッダの値で行います。この認可はリクエストごとに行います。

実装方法の概要 ...

Java,Spring,プログラミング

Mockitoとは

Mockitoとはテスト対象クラスが依存しているクラスを簡単にモック化する機能を提供しているライブラリです。mockit公式ページ

Mockitoを利用することでテスト対象クラスの単体テストに集中すること ...

Java,Spring,プログラミング

コンストラクタインジェクションのメリット

SpringではDIを行う際にはコンストラクタインジェクションを使用することが推奨されています。

テスト時にDIの対象クラスをモックオブジェクトに変更しやすい。
DI対象のフィールド ...

Java,Spring,プログラミング

実行環境Spring Boot 2.2.6
Java11
assertJ 3.15.0
テスト対象のコード

以下のBeanクラスのバリデーションをテスト対象とする。countに対する最小値チェックとtoとmessage ...

Java,Spring,プログラミング

@AssertTrueを付加したチェックメソッドを作成する

Spring MVCにおいて@RestControllerを付与して作成したAPIへPOSTするリクエスト内で相関チェックを行いたい場合、リクエストのBean内に@Assert ...