java邮件发送

版权声明:本文为博主原创文章,转载需注明出处 http://www.cnblogs.com/yanfei1819/p/8708097.html.

在java web项目中,很多地方用到了发送邮件的功能,例如用户注册激活、发送邮箱验证码、发送项目的异常信息、发送通知、发送文件等等。
以下是闲暇之际写的一个小demo,此处以163的邮箱为例。以作参考。

首先引入mail.jar

        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-email</artifactId>
            <version>1.4</version>
        </dependency>

以下是核心代码

package com.software.fanfan.email;

import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.util.Properties;

/**
 * java邮件发送
 * <p>
 * Created by shiyanfei on 2018-04-03.
 */
public class EmailAction {

    public static void main(String[] args) throws MessagingException {

        // 邮箱配置(此处以163邮箱为例)
        Properties prop = new Properties();
        prop.put("mail.host", "smtp.163.com");
        prop.put("mail.transport.protocol", "smtp");
        prop.put("mail.smtp.auth", true);

        Session session = Session.getInstance(prop);
        session.setDebug(true);

        Transport transport = session.getTransport();
        // 发送邮箱的账号和密码
        transport.connect("xxx@163.com", "xxx");
        // 创建邮件
        Message message = createMail(session);
        // 发送邮件
        transport.sendMessage(message, message.getAllRecipients());
    }

    /**
     * 创建邮件
     *
     * @param session
     * @return
     * @throws MessagingException
     */
    private static MimeMessage createMail(Session session) throws MessagingException {
        //创建邮件对象
        MimeMessage mimeMessage = new MimeMessage(session);
        //设置发件人
        mimeMessage.setFrom(new InternetAddress("yanfei1819@163.com"));
        //设置收件人
        mimeMessage.setRecipient(Message.RecipientType.TO, new InternetAddress("xxx@163.com"));
        //设置抄送人
        mimeMessage.setRecipient(Message.RecipientType.CC, new InternetAddress("xxx@163.com"));
        // 设置邮件主题
        mimeMessage.setSubject("第一封JAVA邮件!");
        // 设置邮件内容
        mimeMessage.setContent("这是我的第一封邮件", "text/html;charset=gbk");

        return mimeMessage;
    }
}
posted @ 2018-04-03 13:59  追梦1819  阅读(161)  评论(0编辑  收藏  举报