Jmail发送邮件工具类
好久没更新博客了,实在是拖延症严重啊,好可怕,先更新个工具类吧,之前写的发送邮件的小工具,话不多说上代码
import lombok.extern.slf4j.Slf4j; import java.util.Properties; import javax.mail.*;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage; /**
* <b>发送邮件工具类</b><br/>
* <b>Create on:</b>2016/10/9 16:14<br/>
*
* @author : liud<br/>
*/
@Slf4j
public class SendMailUtil { /**
* 发送邮件
* @param smtpHost
* @param fromUser
* @param fromUserPassword
* @param emailPort
* @param toUser
* @param subject
* @param messageText
*/
public static boolean doSendEmail(String smtpHost, final String fromUser,
final String fromUserPassword, String userName, String emailPort, String toUser, String subject,
String messageText) throws Exception {
boolean flag = false;
try {
Properties props = new Properties();
props.put("mail.smtp.host", smtpHost);
props.put("mail.smtp.port", emailPort);
props.put("mail.smtp.auth", "true");
Session session = Session.getDefaultInstance(props, new Authenticator(){
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(fromUser, fromUserPassword);
}});
MimeMessage message = new MimeMessage(session);
// 发件人
InternetAddress from = new InternetAddress(fromUser);
message.setFrom(from);
// 收件人
InternetAddress to = new InternetAddress(toUser);
message.setRecipient(Message.RecipientType.TO, to);
// 邮件标题
message.setSubject(subject);
// 邮件内容,也可以使纯文本"text/plain"
message.setContent(messageText, "text/html;charset=GBK");
message.saveChanges();
Transport transport = session.getTransport("smtp");
// smtp验证,就是你用来发邮件的邮箱用户名密码
transport.connect(smtpHost, userName, fromUserPassword);
// 发送
transport.sendMessage(message, message.getAllRecipients());
transport.close();
flag = true;
} catch (AddressException e) {
log.error("地址异常:{}", e);
throw e;
} catch (MessagingException e) {
log.error("消息异常:{}", e);
throw e;
} catch (Exception e) {
log.error("系统异常:{}", e);
throw e;
} return flag;
}
}
Jmail发送邮件工具类的更多相关文章
- JAVA发送邮件工具类
import java.util.Date;import java.util.Properties; import javax.mail.BodyPart;import javax.mail.Mess ...
- 发送邮件工具类MailHelper
using System; using System.Net; using System.Net.Mail; using System.Text; using System.Threading; na ...
- java HtmlEmail发送邮件工具类
package com.sh.xrsite.common.utils; import java.io.File; import java.util.HashMap; import java.util. ...
- Java 发送邮件工具类
1. Mail.java package util; import java.util.Date; import java.util.Properties; import javax.mail.Au ...
- java中使用javaMail工具类发送邮件
1.引入依赖 <!--javaMail--> <dependency> <groupId>javax.mail</groupId> <artifa ...
- 01_JavaMail_05_创建邮件工具类MailUtils等方便发送邮件
[工程截图] [代码实现] [Mail.java] package com.Higgin.Utils; import java.util.ArrayList; import java.util.Lis ...
- Apache Commons 工具类介绍及简单使用
转自:http://www.cnblogs.com/younggun/p/3247261.html Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动.下 ...
- 项目经验分享——Java常用工具类集合 转
http://blog.csdn.net/xyw591238/article/details/51678525 写在前面 本文涉及的工具类部分是自己编写,另一部分是在项目里收集的.工具类涉及数 ...
- java 邮件发送工具类
首先需要下载mail.jar文件,我个人通常是使用maven中心库的那个: <dependency> <groupId>javax.mail</groupId> & ...
随机推荐
- [转] Linux 硬件设备查看命令
linux查看设备命令 系统 # uname -a # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue # 查看操作系统版本 # cat /proc/cpuinfo # ...
- Alluxio学习
介绍 Alluxio(之前名为Tachyon)是世界上第一个以内存为中心的虚拟的分布式存储系统.它统一了数据访问的方式,为上层计算框架和底层存储系统构建了桥梁.应用只需要连接Alluxio即可访问存储 ...
- 简单的XMPP服务器与客户端交互
由客户端发起 C: <stream:stream to="localhost" xmlns="jabber:client" xmlns:stream=&q ...
- ajax跨域请求问题
ajax是不允许跨域请求的,今天在使用bootstap-table的时候,data-url使用的地址是绝对地址,而非相对地址,因此在载入数据的时候就出错了. 启动的时候使用是 http://127.0 ...
- 51 Nod 1042 数位dp
1042 数字0-9的数量 1 秒 131,072 KB 10 分 2 级题 给出一段区间a-b,统计这个区间内0-9出现的次数. 比如 10-19,1出现11次(10,11,12,13,14,1 ...
- springmvc.xml配置
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
- java web 工程创建及servlet简单使用
1.java web工程创建 (1)File--->new--->project (2)选择java enterprise,按照下图操作 (3)点击next后,会进入如下界面,修改工程名后 ...
- Luogu P1886 滑动窗口
P1886 滑动窗口 现在有一堆数字共N个数字(N<=10^6),以及一个大小为k的窗口.现在这个从左边开始向右滑动,每次滑动一个单位,求出每次滑动后窗口中的最大值和最小值. 例如: The a ...
- MySQL数据库 053
mysql 使用: 开启服务端软件 mysqld 开启客户端软件 mysql -uroot -p mysql : 就是一个基于socket编写的c/s架构的软件 概念介绍 : 数据库服务器 : 运行数 ...
- Locust HTTP client
Http client 默认是以安全模式运行的,任何由于连接错误.超时或者类似错误引起的异常,都会返回一个空的Response对象,这个请求将会再locust统计中标记为failure,返回的虚拟对象 ...