邮件接口调入(java)

1.需要一个jar包  mail.jar

2.以qq邮件为例:邮件发送方需在qq邮件官网中的设置下开通POP3/SMTP服务,获取下述代码中的密码(代码中的密码非qq邮箱密码)。

3.代码


public class SendMail {

    //smtp服务器地址
    private static final String
            host="smtp.qq.com";
    //端口号
    private static final String
            port="56a2e03493a06e61e060957c72dcc72b";
    //发送人
    private static final String user="[email protected]";
    //密码
    private static final String password="xxxxxxxxxxxxxx";

    //receive     收件人   subject     主题   context     发送内容
    public  static void send(String receive,String subject,String context) throws Exception {

        Properties prop = new Properties();
        prop.setProperty("mail.smtp.host", host);
        prop.setProperty("mail.transport.protocol", "smtp");
        prop.setProperty("mail.smtp.auth", "true");
        prop.setProperty("mail.smtp.port", port);
        //使用JavaMail发送邮件的5个步骤
        //1、创建session
        Session session = Session.getInstance(prop);
        //开启Session的debug模式,这样就可以查看到程序发送Email的运行状态
        session.setDebug(true);
        //2、通过session得到transport对象
        Transport ts = session.getTransport();
        //3、使用邮箱的用户名和密码连上邮件服务器,发送邮件时,发件人需要提交邮箱的用户名和密码给smtp服务器,用户名和密码都通过验证之后才能够正常发送邮件给收件人。
        ts.connect(host, user, password);
        //4、创建邮件
        Message message = createSimpleMail(session, user, receive,subject,context);
        //5、发送邮件
        ts.sendMessage(message, message.getAllRecipients());
        ts.close();
    }

    public static MimeMessage createSimpleMail(Session session,String user,String receive,String subject,String context)
            throws Exception {
        //创建邮件对象
        MimeMessage message = new MimeMessage(session);

        //指明邮件的发件人
        message.setFrom(new InternetAddress(user));

        //指明邮件的收件人,现在发件人和收件人是一样的,那就是自己给自己发
        //message.setRecipient(Message.RecipientType.TO, new InternetAddress(receive));

        //  收件人(可以增加多个收件人、抄送、密送)
        InternetAddress[] sendTo = InternetAddress.parse(receive);
        message.setRecipients(MimeMessage.RecipientType.TO, sendTo);

        //邮件的标题
        message.setSubject(subject);
        //邮件的文本内容
        message.setContent(context, "text/html;charset=UTF-8");
        //返回创建好的邮件对象
        return message;
    }


}

猜你喜欢

转载自blog.csdn.net/IT_LuoSha/article/details/88555225