java发送邮件到qq邮箱_Java利用javax.mail发送邮件至QQ邮箱

javax.mail去哪里下载就不要说了吧。以下是利用javax.mail发送邮件的代码。public static void sendMail(String fromMail,String user,String password,String toMail,String mailTitle,String mailContent) throws Exception {

Properties props = new Properties(); //可以加载一个配置文件

// 使用smtp:简单邮件传输协议

props.put("mail.smtp.host", "smtp.qq.com");//存储发送邮件服务器的信息

props.put("mail.smtp.port", "465");

props.put("mail.smtp.auth", "true");//同时通过验证

MailSSLSocketFactory sf = new MailSSLSocketFactory();

sf.setTrustAllHosts(true);

props.put("mail.smtp.ssl.enable", "true");

props.put("mail.smtp.ssl.socketFactory", sf);

Session session = Session.getInstance(props);//根据属性新建一个邮件会话

MimeMessage message = new MimeMessage(session);//由邮件会话新建一个消息对象

message.setFrom(new InternetAddress(fromMail));//设置发件人的地址

message.setRecipient(Message.RecipientType.TO, new InternetAddress(toMail));//设置收件人,并设置其接收类型为TO

message.setSubject(mailTitle);//设置标题

//设置信件内容

message.setContent(mailContent, "text/html;charset=gbk"); //发送HTML邮件,内容样式比较丰富

message.setSentDate(new Date());//设置发信时间

message.saveChanges();//存储邮件信息

//发送邮件

Transport transport = session.getTransport();

transport.connect(user, password);

transport.sendMessage(message, message.getAllRecipients());//发送邮件,其中第二个参数是所有已设好的收件人地址

transport.close();

}

需要注意的是,password不是QQ邮箱的登录密码,QQ邮箱引入了授权码的概念,授权码在“POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务”下点击“生成授权码”。具体操作如下图所示:

a57cb18c057d80901ff0554778a7e6e1.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值