Doma 2.1.0までは EntityType 実装クラス(コンパイル時に自動生成されるクラス)のコンストラクタ内で単純にインスタンス化されていましたが、 Doma 2.2.0からは Config に getEntityListenerProvider というメソッドが追加され、 そのメソッドが返す EntityListenerProvider をカスタマイズすることで EntityListener のインスタンス取得をフックできるようになりました。 EntityListenerProvider は EntityListener のインスタンスを取得する get メソッドを持っています。 EntityListenerProvider.get メソッドのデフォルト実装は次のようになっています。 default <ENTITY, LISTENER extends EntityListener