文档章节

JAVA 邮件发送工具

太黑_thj
 太黑_thj
发布于 2016/05/12 13:49
字数 261
阅读 17
收藏 1
public class MailTool {
	/**
	 * 
	 * @param mailHost  发件邮箱的主机地址
	 * @param fromEmail 发件邮箱账号
	 * @param password  发件邮箱的密码或者授权码
	 * @param toEmail   收件邮箱
	 * @param subject   邮件标题
	 * @param builder   邮件正文

	 */
	public static void sendEmailToQQ(String mailHost,String fromEmail,String password,String toEmail,String subject,StringBuilder builder) throws MessagingException, GeneralSecurityException{
			Properties props = new Properties();
	        // 开启debug调试 (调试结束可以把true改为false,控制台就不会打印进度了)
	        props.setProperty("mail.debug", "true");
	        // 发送服务器需要身份验证
	        props.setProperty("mail.smtp.auth", "true");
	        // 设置邮件服务器主机名
	        props.setProperty("mail.host", mailHost);
	        // 发送邮件协议名称
	        props.setProperty("mail.transport.protocol", "smtp");
	        //开启 SSL 加密
	        MailSSLSocketFactory sf = new MailSSLSocketFactory();
	        sf.setTrustAllHosts(true);
	        props.put("mail.smtp.ssl.enable", "true");
	        props.put("mail.smtp.ssl.socketFactory", sf);
                // 创建session
	        Session session = Session.getInstance(props);
                // 创建邮件
	        Message msg = new MimeMessage(session);
                //设置邮件的标题
	        msg.setSubject(subject);
	        //将传进来的StringBuilder转成text
	        msg.setText(builder.toString());
                //设置发件邮箱
	        msg.setFrom(new InternetAddress(fromEmail));
                //通过session得到transport对象
	        Transport transport = session.getTransport();
                //通过transport对象链接发件邮箱
	        transport.connect(mailHost, fromEmail, password);
                //通过transport对象发送邮件
	        transport.sendMessage(msg, new Address[] { new InternetAddress(toEmail) });
                //关闭流
	        transport.close();
	}
  
}

 

© 著作权归作者所有

共有 人打赏支持
太黑_thj
粉丝 13
博文 119
码字总数 62914
作品 0
福州
程序员
私信 提问
Java 发送qq邮件基础和封装

前文摘自 菜鸟教程 :http://www.runoob.com/java/java-sending-email.html 使用Java应用程序发送 E-mail 十分简单,但是首先你应该在你的机器上安装 JavaMail API 和Java Activation Frame...

fantj666
03/18
0
0
Jenkins 教程(一)实现自动化打包及邮件通知

个人不喜欢装腔作势一堆专业术语放上去,让大多数人看不懂来提升逼格(所谓的专家),所以我简单的介绍jenkins是干啥的。本文使用jenkins,就是让它把git仓库里的东西取出来,然后在jenkins容器...

FantJ
05/26
0
0
手把手教你搭建Jenkins+Jmeter+Ant自动化集成环境

一、安装前准备 1.JDK:jdk-8u121-windows-x64 2.jmeter工具:apache-jmeter-2.13 3.ANT工具:apache-ant-1.9.7-bin 4.jenkins工具:jenkins-2.32.2 以上安装包工具及版本下载地址:pan.baidu...

keitwotest
2017/09/15
0
0
commons-email发邮件

记得曾经学习用javamail发邮件,学了2天,大概搞明白了利用javamail发邮件的方法和注意事项。 这周末在网上闲逛时,发现了另外一个发邮件的好东东。 commons-email-1.1.jar: 这是Apache组织下...

enzozhong
2013/02/14
0
0
[手记]使用java Mail发送邮件.

因为项目中要用到这个功能,写出来了.所以和大家分享一下.首先,完成javamail发送电子邮件,需要到oracle网站上下载javamail的jar包:地址为:http://www.oracle.com/technetwork/java/javamail...

被风遗忘
2012/05/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

MongoDB

MongoDB介绍 官网www.mongodb.com, 当前最新版3.4 C++编写,基于分布式的,属于NoSQL的一种 在NoSQL中是最像关系型数据库的 MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组...

chencheng-linux
32分钟前
1
0
Qt那些事0.0.10

release和debug在性能上差距很多,困扰我三周的问题很可能是因为这个。

Ev4n
47分钟前
4
0
flume1.8taildirSource

flume使用(一):入门demo flume使用(二):采集远程日志数据到MySql数据库 flume使用(三):实时log4j日志通过flume输出到MySql数据库 flume使用(四):taildirSource多文件监控实时采集...

hblt-j
48分钟前
1
0
redis--windows客户端引起的项目问题

一、redis安装 redis客户端下载地址:https://github.com/MSOpenTech/redis/releases。(redis一开始只支持Linux系统,后来有团队搞出了windows版,不过版本时间偏旧,也无所谓了,可以正常使...

随风飞临蛮荒境123
今天
1
0
19《Java核心技术》之什么情况下Java程序会产生死锁?如何定位、修复?

一、提出问题 今天,我们会讨论一些日常开发中类似线程死锁等问题的排查经验,并选择一两修复过或者诊断过的核心类库死锁问题作为例子,希望不仅能在面试时,包括在日常工作中也能对你有所帮...

飞鱼说编程
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部