MicroProfile Config 3.0へのキャッチアップ
Helidon 3.0がリリースされMicroProfile5.0準拠となり、ついにHelidonでもMicroProfile Config 3.0(MP Config 3.0)の機能が使えるようになりました。そこで今回は前回紹介できなかった2.0から3.0までに取り入れられた便利な機能をその差分として紹介します。このため、今回の記事は以前紹介した「お手軽便利MicroProfile Config」の理解を前提にしています。まだの方はそちらから読んでいただければと思います...
記事を読む初心者のためのJavaプログラミング再学習(その1 基本データ型とオブジェクト型)
はじめに # 「初心者のためのJavaプログラミング再学習」と題して、初心者の方向けにJavaプログラミングの解説シリーズを立ち上げました。Javaプログラミングを網羅的にカバーするのではなく、新人研修等で躓く受講者が多い部分、一度勉強したけど理解が難しい部分に絞って執筆する予定です。どちらかといえば、厳密な理解よりも、イメージを掴んでもらうことを重視した内容です。 初回は「基本データ型とオブジェクト型」について解説します...
記事を読む今さら聞けないMaven – コンテナも一緒にビルドしたい。テスト実行前にコンテナを起動したい
Javaの開発ではMavenなどのビルドツールでビルドやテストの手順を定義し実行するのが一般的ですが、コンテナも一緒にビルドしたいなぁと思うときはありませんか?また、マイクロサービスの普及に伴ってREST通信を行う処理が多くなってきましたが、REST通信部分のテストは手間が掛かるので、いっその事、スタブにコンテナを使いたいけど、テスト実行前にコンテナを起動するにはどうしたらいいんだろう?など...
記事を読む今さら聞けないMaven - JUnit5のテストクラスがなぜか実行されない
JUnit5のテストクラスをEclipseなどのIDEからは問題なく実行できるのにMavenコマンドから実行するとなぜかテストクラスが検出されず実行されなくなる。そんなお困りの事象と対処方法について今回は説明します。とりあえずどうすればいいかだけ教えて!という方は対処からどうぞ。 --> 今さら聞けないMavenMavenが誕生してから早20年ですが、開発で使っていると未だにハマってしまうことやコレってどうやるのだろう?と思うことがあったりします...
記事を読むDTOとエンティティの変換コードをfluentなワンライナーで書いてみる
昨今のJavaアプリケーションではレイヤーアーキテクチャにしろ、Clean Architectureにしろ、DTOとエンティティを変換するコードが多く登場します。今回は冗長となりがちなDTOとエンティティの変換コードをラムダとインタフェースを使ってfluent(流暢)なワンライナーで書けるようにする小ネタを紹介します。 変更前のちょっと残念な変換コード # 外部からの入力などをDTOで受け取り、それをエンティティに変換してサービスに渡す...
記事を読む第4回 ドメイン層の実装とサービスの完成
庄司です。 シリーズ4回目は Spring Integration を使うドメインイベントの発行 (publish) について説明します。 ドメイン駆動設計 (DDD - Domain-driven design) # 説明の前に「Spring Boot と Apache Camel の統合」の議論を受けて冬眠カプセルを冬眠ポッド (hibernation pod) へ、船員を旅行者 (passenger) へとユビキタス言語の変更等イベントストーミングの修正がありました...
記事を読むOpenID Connect でパスワードレス認証を使う
庄司です。 「WebAuthn でパスワードの無い世界へ」に続く「Envoy Proxy による HTTPS Proxy」の記事でプライベートネット内にパスワードレス認証ができる環境構築の方法を説明しました。この記事では、OpenID Connect の Code Flow を使ってパスワードレス認証を説明します。 サービスの概要 # 題材は宇宙船の冬眠ポッド (hibernation pod) です...
記事を読む第3回 OpenAPI Generator 利用時の Generation Gap パターンの適用
庄司です。 前回はドメイン駆動設計の話題を中心に説明しました。 今回は OpenAPI Generator の使い方について説明します。 説明する OpenAPI Generator のバージョンは 6.0.0 です。 OpenAPI Generator はさまざまな言語とフレームワークに対応したクライアントサイド、サーバーサイドのコードを生成します。OpenAPI Generator 自体の実行は Java を使います...
記事を読むJava17にBump upしてみた - 使った/使わなかった新機能(後編)
Java17にBump upしてみたの後編の今回は前編で紹介できなかった3つの機能を紹介していきます...
記事を読むSpring Boot と Apache Camel の統合
庄司です...
記事を読む