java - 在java中发送邮件需要太多时间,我该如何克服这个问题

标签 java email spring-boot

在我的 spring-boot 项目中,我有一个功能,发送电子邮件,在电子邮件中,在事务内发送需要太多时间。

//service layer

    @Transaction
    function inviteUser() {
     // insert in invitation table
     // insert in invitation sub-table
     // sending  mail to user (30 seconds)
    }

发送邮件大约需要 30 秒,我该如何克服这个问题。有没有其他特定的方法来实现这种功能。

最佳答案

在spring-boot中你可以使用@Async注解,

@Transactional
    public void register() {
   //after success call that method
    emailService.sendWelcomeMail();
    }


    @Service
    @Configuration
    @EnableAsync
    public class EmailService {

        // for sending email
        @Async
        public void sendWelcomeMail(){}

    }

关于java - 在java中发送邮件需要太多时间,我该如何克服这个问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43758473/

相关文章:

java - 如何查询/表示列表页中的一对多信息

email - 在 php 中使用 imap 创建邮件帐户而不是邮箱

php - 联系表单 - 用户姓名和电子邮件地址为 'unknown'

java - Spring Boot Web 应用程序的 Logback 配置

java - 如何使用Springboot REST从数据库下载记录

spring - 如何扩展 Spring Boot 应用程序?

java - 从 JSON 对象创建 ArrayList

java - 如何延迟程序以便在文本之间有停顿?

mysql - 根据今天的日期 + 3 个月的日期发送邮件,而 SQL 日期不起作用

java - JSON 数组的 HTML 表单输入等效项是什么?