为了账号安全,请及时绑定邮箱和手机立即绑定

java- 如何使用服务发送电子邮件?

java- 如何使用服务发送电子邮件?

慕森王 2022-09-28 15:46:48
我有一个简单的Web应用程序,不同的用户可以登录它。其中一个重要功能是用户可以访问文档并将其内容的电子邮件发送给外部人员(如第三方)。以下是电子邮件的外观,以提供一个想法:这是非常不言自明的,如果我想在显示的字段框中,我可以发送给多个用户。有了这一切,我正在使用Java Mail API使其工作,并且在点击发送按钮后,它直接发送给收件人。完全没有问题。abc@example.com,efg@hotmail.com,...现在,我想通过将此电子邮件功能作为服务来修改它。这意味着当我发送电子邮件时,填写的内容和信息将存储在MYSQL的表中,服务(在后台运行)将从表中拾取并进行发送。这是我的函数:public void sendEmail(String recipient, String subject, String content,                      String host, String port, final String senderaddress,                       final String password) {    try {        System.out.println("Please Wait, sending email...");        /*Setup mail server */        Properties props = new Properties();        props.put("mail.smtp.host", host); //SMTP Host        props.put("mail.smtp.port", port); //TLS Port        props.put("mail.smtp.auth", "true"); //enable authentication        props.put("mail.smtp.starttls.enable", "true"); //enable STARTTLS        //create Authenticator object to pass in Session.getInstance argument        Authenticator auth = new Authenticator() {            //override the getPasswordAuthentication method            protected PasswordAuthentication getPasswordAuthentication() {                return new PasswordAuthentication(senderaddress, password);            }        };        Session session = Session.getInstance(props, auth);        session.setDebug(true);        // Define message        MimeMessage message = new MimeMessage(session);        // Set From: header field of the header.        message.addRecipients(Message.RecipientType.TO,                              InternetAddress.parse(recipient));        // Set Subject: header field        message.setSubject(subject);    }}这可以按照我想要的方式完成,因为我不确定如何使它工作?
查看完整描述

1 回答

?
慕的地10843

TA贡献1785条经验 获得超8个赞

1)从UI点击“发送邮件”按钮后,您需要调用一种方法来保存数据库中的收件人,主题,内容等数据

2)编写电子邮件发送者服务,从数据库表中检索non_delivered/待处理的邮件,并通过Java邮件API发送

3)在预定专家服务的帮助下安排电子邮件发件人服务


查看完整回答
反对 回复 2022-09-28
  • 1 回答
  • 0 关注
  • 62 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信