sql >> Database >  >> NoSQL >> MongoDB

Hoe registreer ik AbstractMongoEventListener programmatisch?

Om automatische instantiëring te voorkomen, mag de luisteraar niet worden geannoteerd als @Component . De configuratie moet de ApplicationContext bereiken, die automatisch kan worden bedraad.

Mijn configuratieklasse ziet er dus als volgt uit:

@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);
}

Merk op dat dit werkt voor elke ApplicationListener , niet alleen AbstractMongoEventListener .




  1. Controleer de status van het uitvoeren van de MongoDB-kaart, verminder taken

  2. Permanente gegevens van Redis naar MongoDB voor datastore

  3. Mongo-ID's leiden naar enge URL's

  4. Diff() tussen twee collecties in MongoDB