jacksonでXMLの空エレメントをnullにデシリアライズする
jackson-dataformat-xmlを2.11.3から2.12.7にアップデートしたところ、XMLの空エレメントに対するデシリアライズの挙動に違いがあった。
jacksonのACCEPT_EMPTY_STRING_AS_NULL_OBJECTについて勘違いしていたこと
jacksonのデシリアライズ機能のACCEPT_EMPTY_STRING_AS_NULL_OBJECTプロパティについて効果を勘違いしていた。同様の勘違いをしている人が多々いたのでまとめておく。
MockedStaticでモック化したクラスの特定のメソッドの実体を呼び出す方法
自クラスのstaticメソッドを呼び出すようなstaticメソッドのユニットテストを作成したが、テスト対象のメソッドが正常に実行できない問題が発生した。解決方法として、CALLS_REAL_METHODSオプションを指定して、メソッドの実体を呼びだせるようにした。
MacにJDK17(Temurin)をインストールする
MacのJDKバージョンを11から17に移行した際の手順について。JDKは、Eclipse Adoptiumが提供しているTemurinを使用する。
Effective Java 第3版 | 第12章 シリアライズ
Effective Java 第3版を読んだので、本書で紹介されていた全90項目のプラクティスを簡潔にまとめる。本記事は第12章「シリアライズ」の項目について記載する。
Effective Java 第3版 | 第11章 並行性
Effective Java 第3版を読んだので、本書で紹介されていた全90項目のプラクティスを簡潔にまとめる。本記事は第11章「並行性」の項目について記載する。
Effective Java 第3版 | 第10章 例外
Effective Java 第3版を読んだので、本書で紹介されていた全90項目のプラクティスを簡潔にまとめる。本記事は第10章「例外」の項目について記載する。
Effective Java 第3版 | 第9章 プログラミング一般
Effective Java 第3版を読んだので、本書で紹介されていた全90項目のプラクティスを簡潔にまとめる。本記事は第9章「プログラミング一般」の項目について記載する。
Effective Java 第3版 | 第8章 メソッド
Effective Java 第3版を読んだので、本書で紹介されていた全90項目のプラクティスを簡潔にまとめる。本記事は第8章「メソッド」の項目について記載する。
Effective Java 第3版 | 第7章 ラムダとストリーム
Effective Java 第3版を読んだので、本書で紹介されていた全90項目のプラクティスを簡潔にまとめる。本記事は第7章「ラムダとストリーム」の項目について記載する。
Effective Java 第3版 | 第6章 enumとアノテーション
Effective Java 第3版を読んだので、本書で紹介されていた全90項目のプラクティスを簡潔にまとめる。本記事は第6章「enumとアノテーション」の項目について記載する。
Effective Java 第3版 | 第5章 ジェネリクス
Effective Java 第3版を読んだので、本書で紹介されていた全90項目のプラクティスを簡潔にまとめる。本記事は第5章「ジェネリクス」の項目について記載する。
Effective Java 第3版 | 第4章 クラスとインターフェイス
Effective Java 第3版を読んだので、本書で紹介されていた全90項目のプラクティスを簡潔にまとめる。本記事は第4章「クラスとインターフェイス」の項目について記載する。
Effective Java 第3版 | 第3章 すべてのオブジェクトに共通のメソッド
Effective Java 第3版を読んだので、本書で紹介されていた全90項目のプラクティスを簡潔にまとめる。本記事は第3章「すべてのオブジェクトに共通のメソッド」の項目について記載する。
Effective Java 第3版 | 第2章 オブジェクトの生成と消滅
Effective Java 第3版を読んだので、本書で紹介されていた全90項目のプラクティスを簡潔にまとめる。本記事は第2章「オブジェクトの生成と消滅」の項目について記載する。
GradleでCheckStyleを実行する
Javaの静的解析ツールのCheckstyleを導入したので手順について説明する。デフォルトの設定では、checkstyleの定義ファイルはconfig/checkstyle/checkstyle.xmlから読み込まれる。また、Checkstyleを適用することでGradleのタスクにcheckstyleMainとcheckstyleTestのタスクが追加され実行可能となる。