リスナーを追加できるように、リポジトリ レイヤーにイベント通知機能を作成したいと考えています。私はSpringを使用していますが、これは良い方法でしょうか? または、Spring で通知/リスナーを実装するより良い方法はありますか?
@Repository
public class JdbcRepository {
private List<InsertListener> insertListeners;
public void insert(final SomeObject object) {
// Ommited code for brewity
for (InsertListener listener : insertListeners) {
listener.notifiy(...);
}
}
}
春の設定xml
<bean id="jdbcRepository" class="mypackage.JdbcRepository">
<property>
<bean ref="myRepositoryListeners" />
</property>
</bean>
<bean id="myRepositoryListeners" class="java.util.List">
<constructor-arg>
<list>
<ref bean="..." />
<ref bean="..." />
</list>
</constructor-arg>
</bean>