java实现【发邮件】

1、在pom文件增加jar依赖

 <!-- 发送邮件 -->
 <dependency >
       <groupId >com.sun.mail </groupId >
       <artifactId >javax.mail </artifactId >
       <version >1.5.4 </version >
 </dependency >

2、写邮件发送工具类,ps:MAIN_USERNAME 就是你的qq邮箱,MAIN_PASSWORD就是在你开启POP3/SMTP服务的时候给你的授权码。

private static final String MAIN_HOST = "smtp.qq.com"; //发送邮箱服务器
private static final String MAIN_USERNAME = "your@qq.com"; //发件人-用户名
private static final String MAIN_PASSWORD = "yourPasswrd"; //发件人-密码
/**
     * 发送邮件
     * @param recipients 收件人
     * @param subject 主题
     * @param content 内容
     */
    private void sendMail(String recipients,String subject,String content){
        //做链接前的准备工作  也就是参数初始化
        Properties properties = new Properties();
        properties.setProperty("mail.smtp.host",MAIN_HOST);//发送邮箱服务器
        properties.setProperty("mail.smtp.port","465");//发送端口
        properties.setProperty("mail.smtp.auth","true");//是否开启权限控制
        properties.setProperty("mail.debug","true");//true 打印信息到控制台
        properties.setProperty("mail.transport","smtp");//发送的协议是简单的邮件传输协议
        properties.setProperty("mail.smtp.ssl.enable","true");
        //建立两点之间的链接
        Session session = Session.getInstance(properties, new Authenticator() {
            @Override
            protected PasswordAuthentication getPasswordAuthentication() {
                return new PasswordAuthentication(MAIN_USERNAME,MAIN_PASSWORD);
            }
        });
        //创建邮件对象
        Message message = new MimeMessage(session);
        //设置发件人
        try {
            message.setFrom(new InternetAddress(MAIN_USERNAME));

            //设置收件人
            message.setRecipient(Message.RecipientType.TO,new InternetAddress(recipients));//收件人
            //设置主题
            message.setSubject(subject);
            //设置邮件正文  第二个参数是邮件发送的类型
            message.setContent(content,"text/html;charset=UTF-8");
            //发送一封邮件
            Transport transport = session.getTransport();
            transport.connect(MAIN_USERNAME,MAIN_PASSWORD);
            Transport.send(message);
            log.info("邮件发送到"+recipients+"邮箱成功!");
        } catch (MessagingException e) {
            log.error("邮件发送失败,失败信息:"+e.toString());
        }
    }
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值