通过 JavaMail 实现QQ邮件发送
来源:互联网 发布:牛牛开挂软件 编辑:程序博客网 时间:2024/06/05 19:21
前提准备工作:
一、javax-mail jar包
二、邮件的发送方要开启POP3 和SMTP服务--即发送qq邮件的账号要开启POP3 和SMTP服务
开启方法:
登陆qq邮箱
1、点击—-账户
2、下拉找到:POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务 —点击开启
3、发送短信 —–点击确定
4、稍等一会,很得到一个授权码! –注意:这个一定要记住,一会用到
16位的字母,如:tccclqwjbkaadogg
得到的授权码一定要保存好,程序中要使用
完成上面准备步骤后:可以使用下面的代码
import java.util.Date;import java.util.Properties;import javax.mail.BodyPart;import javax.mail.Message;import javax.mail.Multipart;import javax.mail.Session;import javax.mail.Transport;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeBodyPart;import javax.mail.internet.MimeMessage;import javax.mail.internet.MimeMultipart;public class JavaMailSend {public static void main(String[] args) {sendMail("2229592123@qq.com","南无阿弥陀佛,南无地藏王菩萨","佛菩萨来邮件了(⊙o⊙)哦,赶紧去看看吧~");} public static boolean sendMail(String emailTo,String content,String subject) { String fromEmail="236664898@qq.com";//你的QQ邮箱 String eMailType="smtp.qq.com"; String eMailAuthPassword="gnqttrhotabcdbgh";//QQ邮箱授权码 开通POP3/SMTP服务 的授权码 String body = content; //正文内容 try {//****************************创建会话*************************************** Properties props = new Properties(); props.put("mail.smtp.host",eMailType);//发件人使用发邮件的电子信箱服务器 props.put("mail.password",eMailAuthPassword); props.put("mail.transport.protocol", "smtp"); props.setProperty("mail.debug", "true"); props.put("mail.smtp.auth","true"); //这样才能通过验证 //下面这三句很重要,如果没有加入进去,qq邮箱会验证不成功,一直报503错误 props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory"); props.put("mail.smtp.port", "465"); props.put("mail.smtp.socketFactory.port", "465"); //获得默认的session对象 Session mailSession = Session.getInstance(props); mailSession.setDebug(true);//*****************************构造消息*************************************** MimeMessage mimeMessage = new MimeMessage(mailSession); InternetAddress from=new InternetAddress(fromEmail); mimeMessage.setFrom(from); InternetAddress to=new InternetAddress(emailTo); //设置收件人地址并规定其类型 mimeMessage.setRecipient(Message.RecipientType.TO,to); mimeMessage.setSentDate(new Date()); //设置发信时间 mimeMessage.setSubject(subject); //设置主题 mimeMessage.setText(body); //设置 正文 //给消息对象设置内容 BodyPart bodyPart=new MimeBodyPart();//新建一个存放信件内容的BodyPart对象 bodyPart.setContent(body, "text/html;charset= GB2312");//设置 发送邮件内容为HTML类型,并为中文编码 Multipart multipart=new MimeMultipart(); multipart.addBodyPart(bodyPart); mimeMessage.setContent(multipart); mimeMessage.saveChanges(); //发送消息 Transport transport=mailSession.getTransport("smtp"); transport.connect(eMailType,fromEmail,eMailAuthPassword);//发邮件人帐户密码,此外是我的帐户密码,使用时请修改news.properties中的值 。 transport.sendMessage(mimeMessage,mimeMessage.getAllRecipients()); transport.close();//*******************************发送消息******************************** mimeMessage.writeTo(System.out);//保存消息 并在控制台 显示消息对象中属性信息 System.out.println("邮件已成功发送到 " + emailTo); return true; } catch (Exception e) { e.printStackTrace(); System.out.println(e); return false; } }}
阅读全文
0 0
- 通过 JavaMail 实现QQ邮件发送
- JAVAMail 实现 QQ邮件发送
- javamail实现QQ发送邮件
- javaMail发送QQ邮件
- JavaMail发送qq邮件
- JavaMail发送QQ邮件
- 通过spring实现javamail发送邮件功能
- 通过spring实现javamail发送邮件功能
- 通过javaMail发送邮件
- 使用javamail发送qq邮件
- JavaMail 实现邮件发送
- javamail实现邮件发送
- Javamail实现邮件发送
- JavaMail实现邮件发送
- javaMail实现邮件发送
- javamail实现发送邮件
- Javamail实现邮件发送
- javaMail实现发送邮件
- 覆盖默认样式(React组件)
- [jzoj]3172. 【GDOI2013模拟4】贴瓷砖(AC自动机+卡时卡空)
- JAVA的 循环 随机数 函数
- Qt中的字符串类QString
- 分分钟上手C#的委托和事件
- 通过 JavaMail 实现QQ邮件发送
- pk10/888赛车精准追龙计划分配攻略百科
- Redis 事务
- ERROR: Unable to globalize '/usr/local/NONE/etc/php-fpm.d/*.conf' 问题的解决
- C++函数返回值为局部变量
- HDU-1026 Ignatius and the Princess I(广搜+优先队列+输出路径)
- STL(六)forward_list 单向链表
- 【Scikit-Learn 中文文档】协方差估计 / 经验协方差 / 收敛协方差 / 稀疏逆协方差 / Robust 协方差估计
- 防止别人反编译你的软件