【commons】邮件发送工具——commons-email
2024-08-27 16:11:23
一、概述
直接通过官网的overview进行了解,一句话概括如下:
Commons Email aims to provide a API for sending email. It is built on top of the Java Mail API, which it aims to simplify.
Commons Email 旨在提供发送邮件的API,它是简历在Java Mail之上的,目的是简化它。
二、入门
1.获取commons-email
采用maven构建的坐标如下:
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-email -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-email</artifactId>
<version>1.4</version>
</dependency>
如需下载Jar包,请登陆官网下载:http://commons.apache.org/proper/commons-email/download_email.cgi
2.入门程序
发送简单文本邮件
public static void main(String[] args) throws Exception{
Email email = new SimpleEmail();
email.setHostName("smtp.qq.com");
email.setSmtpPort(465);
email.setAuthenticator(new DefaultAuthenticator("775992759@qq.com", "你的授权码"));
email.setSSLOnConnect(true);
email.setFrom("775992759@qq.com");
email.setSubject("TestMail");
email.setMsg("This is a test mail ... :-)");
email.addTo("2126802032@qq.com");
email.send();
System.out.println("发送成功!");
}
关于授权码的设置请参见QQ邮箱(其它邮箱的SMTP的开启设置请使用搜索引擎)的帮助:http://service.mail.qq.com/cgi-bin/help?id=28
结果:
发送带附件的邮件:
public static void main(String[] args) throws Exception{ // Create the attachment
EmailAttachment attachment = new EmailAttachment();
attachment.setPath("D:\\test\\1.jpg");
attachment.setDisposition(EmailAttachment.ATTACHMENT);
attachment.setDescription("Picture of John");
attachment.setName("John.jpg"); // Create the email message
MultiPartEmail email = new MultiPartEmail();
email.setHostName("smtp.qq.com");
email.setSmtpPort(465);
email.setAuthenticator(new DefaultAuthenticator("775992759@qq.com", "你的授权码"));
email.setSSLOnConnect(true);
email.addTo("2126802032@qq.com");
email.setFrom("775992759@qq.com");
email.setSubject("The picture");
email.setMsg("Here is the picture you wanted"); // add the attachment
email.attach(attachment); // send the email
email.send();
System.out.println("发送成功!");
}
结果:
更多,请参见官网入门介绍:http://commons.apache.org/proper/commons-email/userguide.html
最新文章
- geolocation/ 百度地图api Geolocation 定位当前城市信息
- IIS配置MP3/MP4/OGG/flv等资源文件访问
- textView的提醒文字
- foreach属性-动态-mybatis中使用map类型参数,其中key为列名,value为列值
- 怎么提高ArcSDE 写入地理数据库的效率
- HDU 1213 How Many Tables(并查集,简单)
- [PWA] 10. Trigger a version update
- QQ_MultiTalkServer
- python/零起点(一、字符串)
- rabbitmq 脑裂(网络分区)
- Nginx与ftp服务器
- 谷歌被爆秘密研发新系统 欲5年内取代Android
- 【Python】Excel-3
- rbac集成 权限分配。之角色管理
- 手动修改magento域名
- Window 10 :如何彻底关闭:Windows Defender Service(2015-12-20日更新)
- JAVA正则表达式-捕获组与非捕获组
- ALSA声卡07_分析调用过程_学习笔记
- JS常用的设计模式(6)——桥接模式
- jvisualvm远程调试
热门文章
- console 程序随系统启动及隐藏当前程序窗口
- [EffectiveC++]item03:尽可能使用const 并且转载一篇关于const函数的博客
- UVA 12230 Crossing Rivers
- 随手练——S(n)=O(1),判断一个链表是否为“回文”
- 10、Web Service-IDEA-jaxrs 整合spring
- docker-5-容器数据卷
- [Python 网络编程] TCP编程/群聊服务端 (二)
- list详解
- consul搭建(初步)
- centos 清除yum缓存