本文实例为大家分享了JavaMail实现发送邮件功能的具体代码,供大家参考,具体内容如下

用java发邮件,必须要导入新的包
mail.jar – 发邮件的核心包
activation.jar – 对用户和密码加密.
在mail.jar中有三个核心类:
Javax.mail.Session – 是指与邮件服务器会话。整个项目中只要一个就可以了.
Javax.mail.Message(接口) - 准备发送数据信息。
MimeMessage - 可以设置类型的数据信息。
Transport – 它拥有一个方法可以发送Message。
@Test
public void sendMail() throws Exception{
//1,声明properties对象放信息
Properties props = new Properties();
//设置连接哪一台服务器
props.setProperty("mail.host", "smtp.163.com");
//设置是否认证:
props.setProperty("mail.smtp.auth", "true");
//2,声明用户名和密码
Authenticator auth = new Authenticator(){
//返回用户名和密码对象
@Override
protected PasswordAuthentication getPasswordAuthentication() {
PasswordAuthentication pa = new PasswordAuthentication("xxxxx@163.com", "123456");
return pa;
}
};
//3,获取session对象
Session session = Session.getDefaultInstance(props, auth);
//设置session为调试模式
session.setDebug(true);
//4,声明信息
MimeMessage mm1 = new MimeMessage(session);
//5,设置发件人信息
Address form = new InternetAddress("xxxxx@163.com");
mm1.setFrom(form);
//6,设置收件人 ,RecipientType:发送,抄送,密送 类型
mm1.setRecipient(RecipientType.TO, new InternetAddress("xxx@qq.com"));
//mm1.setRecipient(RecipientType.CC, new InternetAddress(""));//抄送
//7,设置主题
mm1.setSubject("拉面学习通知");
String cont = "请点击 <a href='http://www.fsy158.com/news/31_207'>官网新闻</a>查看祝您发财";
mm1.setContent(cont, "text/html;charset=UTF-8");
//8,发送
Transport.send(mm1);
}
其中的mimeType可是text/plain纯文本。
发送附件:
@Test
public void sendMailWithFile() throws Exception{
Properties ps = new Properties();
ps.setProperty("mail.host", "smtp.163.com");
ps.setProperty("mail.smtp.auth", "true");
Authenticator auth = new Authenticator(){
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication("xxx@163.com","xxx.");
}
};
Session session = Session.getDefaultInstance(ps, auth);
session.setDebug(true);
MimeMessage msg = new MimeMessage(session);
Address address = new InternetAddress("xxx@163.com");
msg.setFrom(address);
//发送给
msg.setRecipient(RecipientType.TO, new InternetAddress("xxx@qq.com"));
msg.setRecipient(RecipientType.BCC, new InternetAddress("xxx@qq.com"));//密送
msg.setRecipient(RecipientType.CC, new InternetAddress("xxx@qq.com"));//抄送
msg.setSubject("$激情小视频*免费观看");
//声明多部件处理
MimeMultipart mm = new MimeMultipart();
MimeBodyPart body1 = new MimeBodyPart();
//设置附件
DataSource ds1 = new FileDataSource(new File("./img/a.jpg"));
DataHandler dh1 = new DataHandler(ds1);
body1.setDataHandler(dh1);
//必须设置名称
body1.setFileName(MimeUtility.encodeText("|美女|.jpg"));
MimeBodyPart body2 = new MimeBodyPart();
DataSource ds2 = new FileDataSource(new File("./img/b.jpg"));
DataHandler dh2 = new DataHandler(ds2);
body2.setDataHandler(dh2);
body2.setFileName(MimeUtility.encodeText("|美女|2.jpg"));
MimeBodyPart body3 = new MimeBodyPart();
DataSource ds3 = new FileDataSource(new File("./img/m.mp3"));
DataHandler dh3 = new DataHandler(ds3);
body3.setDataHandler(dh3);
body3.setFileName(MimeUtility.encodeText("*.mp3"));
//添加body到mm
mm.addBodyPart(body1);
mm.addBodyPart(body2);
mm.addBodyPart(body3);
msg.setContent(mm);
//设置发送日期
Calendar c = Calendar.getInstance();
c.add(Calendar.DATE, -5);
msg.setSentDate(c.getTime());
//发送
Transport.send(msg);
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# JavaMail
# 发送邮件
# Spring Boot中利用JavaMailSender发送邮件的方法示例(附源码)
# 基于SSM框架+Javamail发送邮件的代码实例
# 基于java使用JavaMail发送邮件
# 使用JavaMail发送邮件保证成功的方法
# JavaMail入门教程之发送邮件(3)
# JavaWeb中使用JavaMail实现发送邮件功能实例详解
# Java使用JavaMail发送邮件的方法
# Java基于JavaMail实现向QQ邮箱发送邮件
# 如何使用JavaMail发送邮件
# JavaWeb中JavaMail创建邮件和发送邮件
# 发邮件
# 请点击
# 是指
# 中有
# 大家分享
# 具体内容
# 官网
# 祝您
# 免费观看
# 大家多多
# 邮件服务器
# 就可以
# 发送给
# 小视频
# 必须要
# Authenticator
# true
# properties
相关文章:
高防服务器租用首荐平台,企业级优惠套餐快速部署
怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?
如何在建站主机中优化服务器配置?
如何在IIS服务器上快速部署高效网站?
如何快速查询网站的真实建站时间?
网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?
大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?
高性能网站服务器配置指南:安全稳定与高效建站核心方案
如何注册花生壳免费域名并搭建个人网站?
桂林网站制作公司有哪些,桂林马拉松怎么报名?
在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?
网站代码制作软件有哪些,如何生成自己网站的代码?
ppt制作免费网站有哪些,ppt模板免费下载网站?
制作网站的网址是什么,请问后缀为.com和.com.cn还有.cn的这三种网站是分别是什么类型的网站?
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
寿县云建站:智能SEO优化与多行业模板快速上线指南
建站主机核心功能解析:服务器选择与网站搭建流程指南
建站之星下载版如何获取与安装?
如何用5美元大硬盘VPS安全高效搭建个人网站?
广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的?
如何在香港免费服务器上快速搭建网站?
如何在Golang中使用replace替换模块_指定本地或远程路径
MySQL查询结果复制到新表的方法(更新、插入)
c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】
制作门户网站的参考文献在哪,小说网站怎么建立?
TestNG的testng.xml配置文件怎么写
英语简历制作免费网站推荐,如何将简历翻译成英文?
Avalonia如何实现跨窗口通信 Avalonia窗口间数据传递
如何快速完成中国万网建站详细流程?
如何在Windows虚拟主机上快速搭建网站?
Swift中swift中的switch 语句
如何在万网自助建站平台快速创建网站?
建站之星3.0如何解决常见操作问题?
宝塔建站无法访问?如何排查配置与端口问题?
常州自助建站费用包含哪些项目?
网站按钮制作软件,如何实现网页中按钮的自动点击?
建站之星上传入口如何快速找到?
c# 在ASP.NET Core中管理和取消后台任务
保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?
,sp开头的版面叫什么?
Python如何创建带属性的XML节点
如何通过VPS建站无需域名直接访问?
如何用IIS7快速搭建并优化网站站点?
php8.4新语法match怎么用_php8.4match表达式替代switch【方法】
免费制作海报的网站,哪位做平面的朋友告诉我用什么软件做海报比较好?ps还是cd还是ai这几个软件我都会些我是做网页的?
如何通过FTP服务器快速搭建网站?
专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?
PHP正则匹配日期和时间(时间戳转换)的实例代码
宝华建站服务条款解析:五站合一功能与SEO优化设置指南
如何选择可靠的免备案建站服务器?
*请认真填写需求信息,我们会在24小时内与您取得联系。