JavaMail 发送邮件

JavaMail邮件发送

引用maven jar包

1 <dependency>
2     <groupId>javax.mail</groupId>
3     <artifactId>mail</artifactId>
4     <version>1.4.5</version>
5 </dependency>

发送邮件函数

private static void sendMail(){
        // 配置发送邮件的环境属性
        final Properties props = new Properties();
        /*
         * 可用的属性: mail.store.protocol / mail.transport.protocol / mail.host /
         * mail.user / mail.from
         */
        // 表示SMTP发送邮件,需要进行身份验证
        props.put("mail.smtp.auth", "true");
        props.put("mail.smtp.host", "smtp.163.com");
        // 发件人的账号
        props.put("mail.user", "*****@163.com");
        // 访问SMTP服务时需要提供的密码
        props.put("mail.password", "******");

        // 构建授权信息,用于进行SMTP进行身份验证
        Authenticator authenticator = new Authenticator() {
            @Override
            protected PasswordAuthentication getPasswordAuthentication() {
                // 用户名、密码
                String userName = props.getProperty("mail.user");
                String password = props.getProperty("mail.password");
                return new PasswordAuthentication(userName, password);
            }
        };
        // 使用环境属性和授权信息,创建邮件会话
        Session mailSession = Session.getInstance(props, authenticator);
        // 创建邮件消息
        MimeMessage message = new MimeMessage(mailSession);

        try {
            // 设置发件人
            InternetAddress form = null;
            form = new InternetAddress(
                    props.getProperty("mail.user"));
            message.setFrom(form);
            // 设置收件人
            InternetAddress to = new InternetAddress(****@163.com);
            message.setRecipient(Message.RecipientType.TO, to);
            // 设置邮件标题
            message.setSubject("测试邮件");

            // 设置邮件的内容体
            message.setContent("<a href='http://www.cnblogs.com/dawnheaven/'>测试的HTML邮件</a>", "text/html;charset=UTF-8");

            // 发送邮件
            Transport.send(message);
        } catch (AddressException e) {
            e.printStackTrace();
        } catch (MessagingException e) {
            e.printStackTrace();
        }
    }

原文地址:https://www.cnblogs.com/dawnheaven/p/5057150.html