Commons Email-电子邮件发送
- 资源链接
- Commons Email简介
- Commons Email 的配置
- Commons Email 的用法
- 开通POP3SMTP服务
- 发送电子邮件源码
- Mail源码
- MailAction源码
- 测试代码MailTest源码
- 测试的结果
资源链接
Commons Email 官网地址
- Commons Email
Commons Email API 文档
- Apache Commons Email 1.5 API
码云上的项目源码
Commons Email简介
公用电子邮件的目标是提供一个发送电子邮件的API。它是建立在Java邮件API之上的,它的目标是简化。
SimpleEmail - 这个类用于发送基本的基于文本的电子邮件。
MultiPartEmail - 该类用于发送多部分消息。这允许带有附件的文本消息或附件或附件。
HtmlEmail - 这个类用于发送HTML格式的电子邮件。它具有作为多部分电子邮件的所有功能,可以方便地添加附件。它还支持嵌入的图像。
ImageHtmlEmail - 这个类用于发送带有内联图像的HTML格式的电子邮件。它具有HtmlEmail的所有功能,但是将所有的图像引用转换为内联图像。
EmailAttachment - 这是一个简单的容器类,可以方便地处理附件。它适用于多部分电子邮件和HtmlEmail的实例。
Commons Email 的配置
这个的基础配置很简单,就一个Maven依赖项,如下:
<dependency><groupId>org.apache.commons</groupId><artifactId>commons-email</artifactId><version>1.5</version></dependency>
Commons Email 的用法
开通POP3/SMTP服务
在使用该Maven依赖发送电子邮件之前,我们先确保发送的电子邮件提供方已经开通了“POP3/SMTP服务”,如果没有开通的话可以参考下面的方法。
我这里是以网易邮箱为例来进行的说明。
首先是登录电子邮箱首页,如下:
找到图示的【设置】按钮,点击后在弹出的下拉列表框中选择“POP3/SMTP/IMAP”选项。
在弹出的页面中,选中“ POP3/SMTP服务”复选框,点击图示的【保存】按钮即可。
发送电子邮件源码
Mail源码:
package com.lyc.email;import lombok.*;import java.util.Set;@Getter
@Setter
@Builder
public class Mail {private String subject;private String message;private Set<String> receivers;
}
MailAction源码:
package com.lyc.email;import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.HtmlEmail;@Slf4j
public class MailAction {public static boolean send(Mail mail) {//发送方电子邮件地址String from = "zhangzhenyihi@163.com";//发送的端口号int port = 25;//发送的主机地址(需要开通pop3服务)String host = "smtp.163.com";//发送方电子邮件密码String pass = "password";//发送方昵称String nickname = "zhangzhenyi";HtmlEmail email = new HtmlEmail();try {email.setHostName(host);email.setCharset("UTF-8");for (String str : mail.getReceivers()) {email.addTo(str);}email.setFrom(from, nickname);email.setSmtpPort(port);email.setAuthentication(from, pass);email.setSubject(mail.getSubject());email.setMsg(mail.getMessage());email.send();log.info("{} 发送邮件到 {}", from, StringUtils.join(mail.getReceivers(), ","));return true;} catch (EmailException e) {log.error(from + "发送邮件到" + StringUtils.join(mail.getReceivers(), ",") + "失败", e);return false;}}}
测试代码MailTest源码:
package com.lyc.mail;import com.lyc.email.Mail;
import com.lyc.email.MailAction;
import org.junit.Assert;
import org.junit.Test;import java.util.HashSet;
import java.util.Set;public class MailTest {@Testpublic void test(){//添加接收者电子邮件地址Set<String> receivers = new HashSet<String>();receivers.add("1078689276@qq.com");Mail mail = Mail.builder().subject("异常信息标题") //发送的电子邮件标题.message("异常信息内容") //发送的电子邮件内容.receivers(receivers).build();//断言发送的电子邮件是否成功Assert.assertEquals(true,MailAction.send(mail));}}
测试的结果:
Commons Email-电子邮件发送相关推荐
- nginx $mail-send()发送邮件报错_基于SMTP协议的E-MAIL电子邮件发送客户端软件C#实现...
摘 要 电子邮件在当今社会中扮演了一个很重要的角色.越来越多的人在使用它.而且用它的人数势必会继续增加.虽然,现在已经有很多的邮件收发软件例如著名的FoxMail 但是对于大多数的非专业的人来说它还是 ...
- Apache Commons Email 怎样设置接收方发送已读回执?
Apache Commons Email 怎样设置接收方发送已读回执? 在给别人发邮件时,怎么知道对方是否收到? 类似126/163邮箱里面,发信时 勾选 "[ ] 已读回执" 对 ...
- 基于java Email的电子邮件发送
Email 电子邮件,用java实现email的发送,首先我们需要了解一下email发送的大概过程.简单来说,发送email,需要从用户的电脑邮件软件(MUA),发送到邮件服务器(MTA)上,在通过若 ...
- JavaMail| Apache Commons Email介绍
Apache Commons Email简介 Apache Commons Email旨在提供一个用于发送电子邮件的API.它建立在JavaMail API之上,旨在简化它. 官网: http://c ...
- Commons Email开源项目使用
Commons Email介绍 Commons Email是一个提供发送邮件的API.它是基于Java Mail API开发的项目,目的是为使用更加简单. Commons Email官网地址:http ...
- commons email 简介
org.apache.commons.mail Commons-Email旨在提供用于发送电子邮件. 下面是一个例子: import java.util.HashMap; import java.ut ...
- android javamail获取邮件太多太慢_java 实现 email 邮件发送最简单优雅的方式(网易 163 为例)
如何使用IMAP服务? 首先介绍一些邮件发送的基础知识,如果你已经知道可以跳过. 直接到 Email 邮件发送实现的部分. IMAP是什么? IMAP,即Internet Message Access ...
- java发送gmail_如何在Gmail中轻松通过电子邮件发送人群
java发送gmail Mailing lists are an old tool in the email arsenal, but their implementation in Gmail is ...
- 如何使用sp_send_dbmail存储过程将SQL查询结果通过电子邮件发送到智能手机
介绍 (Introduction) Sometimes there are tasks that require too much time to finish during business hou ...
- html报告怎么发送给别人,如何将由Html-test runner(.html)生成的报告通过电子邮件发送给特定用户?...
我已经学会了如何在python中生成测试报告(.html格式).现在我计划通过电子邮件发送生成的报告. 我使用下面的代码,但未能如愿:如何将由Html-test runner(.html)生成的报告通 ...
最新文章
- java实现序列化接口6_只有实现 Java.io. 接口的类的对象才能被序列化和反序列化。用关键字 修饰的对象变量将不会序列化。_程序设计基础(C#)答案_学小易找答案...
- Java 实现MapReduce函数
- 也谈Spring MVC
- 使用Hibernate在CQRS读取模型中进行快速开发
- android设置高德的3d,高德地图3D版的使用方法
- 什么舱位_把“订舱位”说成book warehouse position,外企不会要你
- 黄金分割比的重新理解
- sql查询百分之20到百分之40的数据_FOCUS数据管理之ETL监控
- Python3序列赋值、序列解包详解(上)
- centos locale报错问题
- QT编程编程入门系列文章之一——QT编程简介
- sendto函数深入理解
- java 使用POI导入复杂excel表格
- [论文阅读][CVPR2021]EventZoom: Learning to Denoise and Super Resolve Neuromorphic Events
- Android读取手机存储文件,android 手机存储文件夹学习
- 离散数学中求合取范式析取范式
- 【Flutter小记3】Android打开前置或广角摄像头的同时打开闪光灯方案
- mysql 经纬度范围_MySQL之根据经纬度查询多少公里范围内的数据
- 亲测 阿里云虚拟主机部署FastAadmin
- 手把手教你R语言做k均值聚类分析