java 发邮件

很多项目都可能会用到发邮件功能,实现非常简单。

1 引入java发邮件用到的jar包

XML 复制代码
 <!-- https://mvnrepository.com/artifact/javax.mail/mail -->
        <dependency>
            <groupId>javax.mail</groupId>
            <artifactId>mail</artifactId>
            <version>1.4.7</version>
        </dependency>

2 java发邮件代码

XML 复制代码
import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.util.Properties;

public class EmailUtil {

    /**
     * 邮件工具类
     */

        /**
         * 发送邮件
         * @param to 给谁发
         * @param text 发送内容
         */
        public static void send_mail(String to,String text) throws MessagingException {
            //创建连接对象 连接到邮件服务器
            Properties properties = new Properties();
            //设置发送邮件的基本参数
            //发送邮件服务器
            properties.put("mail.smtp.host", "smtp.qq.com");
            //发送端口
            properties.put("mail.smtp.port", "587");
            properties.put("mail.smtp.auth", "true");
            //设置发送邮件的账号和密码
            Session session = Session.getInstance(properties, new Authenticator() {
                @Override
                protected PasswordAuthentication getPasswordAuthentication() {
                    //两个参数分别是发送邮件的账户和密码(授权码)
                    return new PasswordAuthentication("xxxxx@qq.com","密码");
                }
            });

            //创建邮件对象
            Message message = new MimeMessage(session);
            //设置发件人
            message.setFrom(new InternetAddress("发出邮箱的地址"));
            //设置收件人
            message.setRecipient(Message.RecipientType.TO,new InternetAddress(to));
            //设置主题
            message.setSubject("验证邮箱");
            //设置邮件正文  第二个参数是邮件发送的类型
            message.setContent(text,"text/html;charset=UTF-8");
            //发送一封邮件
            Transport.send(message);
        }

}
相关推荐
小蒜学长2 分钟前
基于Java的公司采购系统的设计与实现(代码+数据库+LW)
java·数据库·spring boot·后端·公司采购系统
lee_tianbai3 分钟前
Java SSM 电影票预定系统|完整前后端项目,开箱即用(源码分享)
java·开发语言·数据库
SM_YHJ8 分钟前
RFID通道门禁与资产台账联动的自动登记技术实现方案
大数据·数据库·人工智能
PaperData11 分钟前
2014-2024年省级居民消费结构升级
数据库
小坏讲微服务16 分钟前
Spring Boot 4 新特性全解析:从上手到生产实战
java·spring boot·后端·架构·springboot4
砚底藏山河19 分钟前
python量化入门:多周期数据对齐统一时间轴
java·数据库·python·金融·maven
集智飞行26 分钟前
解决mavros2 ros2版本cpu占用高的问题
java·服务器·前端
Java后端的Ai之路29 分钟前
昇腾NPU显存管理避坑指南:从npu-smi输出精准识别空闲卡的底层逻辑与实战
服务器·网络·数据库·npu·大模型服务
禾小西1 小时前
05丨Redis 内存快照:宕机后,如何实现快速恢复?
数据库·redis·缓存
笃行3501 小时前
数据同步软件:KFS 在 KingbaseES 项目里到底解决了什么
数据库