セッション「Spring Data for Apache GeodeでRDBいらずのアプリ開発をしよう!」
ウルシステムズの山河さんのセッションでは、メモリベースのデータストアであるApache Geode(以下、Geode)をSpring Data for Apache Geodeを通して利用する方法に関する内容を扱っていました。Geodeの紹介からSpring Data for Apache Geodeを利用したCRUD処理のような基本的な使い方に始まり、非同期イベント処理といった、やや応用的な使い方まで順を追って分かりやすく解説されていました。
Spring Data for Apache Geodeを利用すると、Spring Dataの統一的なインターフェースを介してデータアクセスが可能であり、Geode特有のさまざまな処理を肩代わりしてくれるために、Geodeを利用する敷居を大きく下げることができます。Geode自体はスケールアウトが簡単にでき、サービス間を疎結合にするマイクロサービス的な活用にも向いているそうです。
また、NoSQLでは常にトランザクション処理のサポートが不十分である点が槍玉に挙げられますが、本セッションでは、そもそもGeodeらしい設計をすることが重要であり、RDB的なテーブルに引っ張られるような設計を避けることで課題を解決することができるということが強調されていました。
セッション「Spring 5でSpring Testのここが変わる」
NTTデータの平栗さんはSpring Testに関するSpring Framework 5での変更点について紹介してくれました。
Spring FrameworkはDIコンテナを基盤としたフレームワークですが、一般にJUnitやTestNGなどのテスティングフレームワーク上でDIコンテナを動作させることは困難です。Spring Testは、これらのテスティングフレームワークにおいてDIコンテナと連携したテストを行うための機能を提供しています。
Spring Framework 5におけるSpring Testの大きな追加機能の一つがJUnit 5のサポートです。JUnit 5は実に10年ぶりのメジャーアップデートであり、さまざまな機能追加が行われています。セッションではその中からネストしたテスト、パラメータ化テスト、アサーションAPIの強化、条件付きテストといった機能を取り上げ、使いどころや使用方法について解説がありました。なお、紹介のあったJUnit 5のAPIの中には実験的なものも含まれているとのことなので、実際に使用する際には注意が必要です。
JUnit 5では内部的なアーキテクチャも大きく変更されており、拡張方式も前バージョンとは異なります。そのためSpring 5のSpring Testにも大規模なアーキテクチャ改修が実施され、その結果JUnit 5のメリットをすべて享受できるようになったとのことでした。
セッションは大きな文字で見やすい高橋メソッド風の資料でテンポよく講演されていました。当日は途中でPCのバッテリーが切れるというハプニングもありましたが、現在は資料が公開されているので、当日参加されていた方も改めてご確認してみてください。
