JavaDemo——使用javax.mail发送腾讯企业邮件
2023-09-11 14:16:28 时间
高jdk版本导入javax.mail,maven导入:
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.5.0-b01</version>
</dependency>
Demo:
/**
* 2019年6月25日下午5:53:19
*/
package testqqmail;
import java.io.File;
import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.BodyPart;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.NoSuchProviderException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
/**
* @author XWF
*
*/
public class TestQQMail {
/**
* @param args
*/
public static void main(String[] args) {
Properties props = new Properties();
props.put("mail.transport.protocol", "smtp");//链接协议
props.put("mail.smtp.host", "smtp.exmail.qq.com");//主机名 smtp.exmail.qq.com:腾讯企业邮箱 smtp.qq.com:qq邮箱
// props.put("mail.smtp.host", "smtp.qq.com");
props.put("mail.smtp.port", 465);//端口号
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.ssl.enable", "true");//使用ssl安全链接
props.put("mail.debug", "true");//控制台打印debug信息
try {
Session session = Session.getInstance(props);//获得回话
Message msg = new MimeMessage(session);//获取邮件
msg.setSubject("主题主题");//主题
msg.setFrom(new InternetAddress("xxxxxxx@xxx.cn"));//设置发件人(必须与授权地址一致)
// msg.setSentDate(new Date("2020/11/11"));//设置发送时间(显示)
msg.setRecipient(Message.RecipientType.TO, new InternetAddress("xxxxxx@qq.com"));//设置一个收件人,TO
// msg.setRecipients(Message.RecipientType.TO, new InternetAddress[] {new InternetAddress("")});//设置多个收件人
// msg.setRecipients(Message.RecipientType.CC, arg1);//抄送,CC
// msg.setRecipients(Message.RecipientType.BCC, arg1);//密送,BCC
// msg.setReplyTo(addresses);//回复
//if需要发送附件(+文本)
MimeMultipart multipart = new MimeMultipart();
//设置附件
BodyPart filebodypart = new MimeBodyPart();
DataHandler dh = new DataHandler(new FileDataSource(new File("E:/md5.h")));
filebodypart.setDataHandler(dh);
filebodypart.setFileName("fileABC.h");//设置附件名
multipart.addBodyPart(filebodypart);
//设置内容
BodyPart textbodypart = new MimeBodyPart();
textbodypart.setText("这是带附件的邮件。");
multipart.addBodyPart(textbodypart);
msg.setContent(multipart);
//else只发文本
// msg.setText("内容内容内容内容内容\n内容内容内容内容内容内容内容---------内容");
Transport trans = session.getTransport();
trans.connect("xxxxxxx@xxx.cn", "password");//登陆邮箱
trans.sendMessage(msg, msg.getAllRecipients());
trans.close();
} catch (AddressException e) {
e.printStackTrace();
} catch (NoSuchProviderException e) {
e.printStackTrace();
} catch (MessagingException e) {
e.printStackTrace();
}
}
}
结果:
参考:
相关文章
- DT企业新闻也叫公司新闻简介调取方案
- 武汉东湖新技术开发区2014年度“瞪羚企业”名单
- 全嘉宾阵容官宣 | 2022 云原生峰会即将启动,实战派企业向你发出邀请
- 数据超市打造企业征信数据,引爆大数据风控
- 自己收集的关于企业数据安全,等级,备份恢复的方案等文档
- 大数据给IT企业带来攫金市场新机遇
- 云效无线测试平台新品发布 用技术驱动企业提效
- EVPN配置实例(三)——EVPN分布式网关下访问企业外部网站
- atitit. 管理哲学 大毁灭--- 如何防止企业的自我毁灭
- Atitit. Attilax企业框架 AEF的发展里程总结
- 企业管理软件 Support 领域 的 L1,L2 和 L3 Support 以及 SLA 的概念
- 企业官网小程序搭建教程-首页的搭建02
- 华为时习知,让企业培训更简单!
- 企业如何实现数字化转型
- 疫情过后,企业如何选择OA系统?OA是否成为企业必备的软件
- 移动OA系统,联动企业协作让办公高效无间断
- 企业为什么要用ERP呢?上了ERP,企业又用不好的原因有哪些?
- Ubuntu18.04安装微信/企业微信(九十九)