发送邮件公共方法

发布时间 2023-11-02 11:02:23作者: 我的心儿

你可以使用JavaMail API来发送包含参数的邮件。以下是一个简单的示例:

import javax.mail.;
import javax.mail.internet.
;
import java.util.*;

public class SendMail {
public static void main(String[] args) {

    // 收件人信息
    String to = "recipient@example.com";
    
    // 工号和时间参数
    String jobNumber = "12345";
    Date currentTime = new Date();

    // 构造邮件内容
    String subject = "工号和时间参数";
    String body = "工号:" + jobNumber + "\n时间:" + currentTime.toString();

    // 发送邮件
    sendEmail(to, subject, body);
}

public static void sendEmail(String to, String subject, String body) {

    // 发件人信息
    String from = "sender@example.com";
    String username = "sender@example.com";
    String password = "password";

    // SMTP服务器信息
    String host = "smtp.example.com";
    int port = 587;

    // 设置邮件会话属性
    Properties properties = new Properties();
    properties.put("mail.smtp.host", host);
    properties.put("mail.smtp.port", port);
    properties.put("mail.smtp.auth", "true");
    properties.put("mail.smtp.starttls.enable", "true");

    // 创建邮件会话
    Session session = Session.getInstance(properties, new Authenticator() {
        @Override
        protected PasswordAuthentication getPasswordAuthentication() {
            return new PasswordAuthentication(username, password);
        }
    });

    try {
        // 创建邮件
        MimeMessage message = new MimeMessage(session);
        message.setFrom(new InternetAddress(from));
        message.setRecipient(Message.RecipientType.TO, new InternetAddress(to));
        message.setSubject(subject);
        message.setText(body);

        // 发送邮件
        Transport.send(message);
        System.out.println("邮件发送成功");
    } catch (MessagingException ex) {
        System.out.println("邮件发送失败:" + ex.getMessage());
    }
}

}

在该示例中,我们使用jobNumber和currentTime两个参数构造邮件内容,并通过sendEmail()方法发送邮件。在sendEmail()方法中,我们指定了发件人信息、SMTP服务器信息和邮件会话属性,并使用Transport.send()方法发送邮件。你可以根据实际情况修改邮件内容和发送人、收件人信息。