Прослушиватель событий весенней загрузки для создания хэш-карты при запуске приложения

#spring-boot #event-listener

#пружинный ботинок #событие-слушатель

Вопрос:

У меня есть информация о клиентах, хранящаяся в базе данных mongo. Я хочу использовать простой механизм, с помощью которого я мог бы получить все сведения о клиентах в хэш-карте при запуске приложения, чтобы мне не нужно было обращаться к базе данных. Для этого я подумывал об использовании прослушивателя событий spring boot. Но я не могу понять, как соединить точки для реализации.

Прямо сейчас я думаю о простом подходе к хэш-карте.

Ответ №1:

Вы можете реализовать ApplicationRunner или CommandLineRunner в своем весеннем бобе. Эти интерфейсы можно переопределить одним run методом, и он будет выполняться непосредственно перед SpringApplication.run(…​) завершением.

  import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; import org.springframework.stereotype.Component;  @Component public class ExampleRunner implements ApplicationRunner {   @Override  public void run(ApplicationArguments args) throws Exception {  System.out.println("-----------------checking output");   }  }  

выход: 2021-12-08 20:30:59.079 INFO 69065 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path '' 2021-12-08 20:30:59.093 INFO 69065 --- [ main] com.upbytes.example.ExampleApplication : Started ExampleApplication in 2.392 seconds (JVM running for 2.849) -----------------checking output