我有一个场景,在容器停止时,我需要在容器启动和停止时启动一个线程。我正在为我的应用程序使用 Spring MVC。我的最终目标是在用户执行特定操作时发送电子邮件。此外,我不想因为电子邮件发送过程而减慢流程。所以我的计划是,我将创建一个队列,并在我需要发送邮件时将邮件消息放入队列中。在启动期间启动的线程将读取队列并发送邮件。在这里,我面临两个问题:
- 在 Spring MVC 的情况下,如何在应用程序启动/停止时启动和停止线程(对于普通的 Web 应用程序,我可以为此使用 ServletContextListener。)?
- 在线程中,我需要调用邮件服务来发送邮件。那么如何将服务注入线程呢?可能吗?
非常感谢任何提示或更灵活的解决方案....
~拉吉什