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> & ...
随机推荐
- 编译的 Ruby 2.3.0 缺少 openssl 支持的解决方法 (已解决)
我的系统是centos 7.5,已离线安装ruby-2.3.0,openssl-1.0.2l,rubygems-2.7.4 如下图: 但是在 gem sources -a http://gems.r ...
- Python常用功能函数
Python常用功能函数汇总 1.按行写字符串到文件中 import sys, os, time, json def saveContext(filename,*name): format = '^' ...
- 为 JSON 字符串创建对象
---------------------------页面效果---------------------------------- ---------------------------代码实现--- ...
- 模块化之seaJs学习和使用
使用seaJs也有一阵子了,一直也想抽个时间写个这方面的博客,直到今天才写……也许写的不是很完善,但跟大伙分享也是一种乐趣,不对之处欢迎指出.[抱拳] 时间有限,我这里不过多介绍前端模块化,有兴趣可以 ...
- 修改node.js默认的npm安装目录
转自https://blog.csdn.net/baijinwen/article/details/77961746 默认的安装路径:C:/用户/[用户名]/AppData/Roming/npm/no ...
- python高级——目录
目 录 python高级(一)—— python数据模型(特殊方法) python高级(二)—— python内置序列类型 python高级(三)—— 字典和集合(泛映射类型) python高级(四 ...
- [转] java获取hostIp和hostName
[From] https://www.cnblogs.com/huluyisheng/p/6867370.html InetAddress的构造函数不是公开的(public),所以需要通过它提供的静态 ...
- Oracle 备份还原
导出整个数据库,在CMD命令窗口执行 EXP 用户名/密码@服务名(数据库) FULL=Y FILE=路径 EXP INTERFACE/INTERFACE@PIVAS_XMDWYY FULL=Y FI ...
- spring cloud知识点
eureka注册中心(zookeeper,eureka) 也要集群,可以相互注册,网状结构.后面很多高可用的服务都是用这种方式.Eureka的客户端缓存技术 spring boot actuator ...
- spring.net AOP
AOP 术语 通知(Advice): 通知描述了切面要完成的任务,同时还描述了何时执行这个任务. 连接点(Joinpoint): 程序中应用通知的地方称为连接点,这个点可以是方法被调用时,异常抛出时 ...