sql >> Base de Datos >  >> NoSQL >> MongoDB

¿Cómo registro AbstractMongoEventListener programáticamente?

Para evitar la instanciación automática, el oyente no debe anotarse como @Component . La configuración debe obtener el ApplicationContext, que se puede conectar automáticamente.

Por lo tanto, mi clase de configuración se ve así:

@Autowired
private AbstractApplicationContext context;

private void registerListeners() {
    ProjectsRepositoryListener firstListener = beanFactory.createBean(ProjectsRepositoryListener.class);
    context.addApplicationListener(firstListener);

    MySecondListener secondListener = beanFactory.createBean(MySecondListener.class);
    context.addApplicationListener(secondListener);
}

Tenga en cuenta que esto funciona para cualquier ApplicationListener , no solo AbstractMongoEventListener .