文档章节

java实现邮件发送

wagnqi0321
 wagnqi0321
发布于 2017/05/20 00:13
字数 235
阅读 14
收藏 0
package com.moli.common.utils;

import java.util.Properties;

import javax.mail.Address;
import javax.mail.Message;
import javax.mail.Multipart;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;

import com.moli.common.config.PropertiesUtil;
import com.sun.mail.util.MailSSLSocketFactory;
/**
 * 
 *发送邮件
 *
 */
public class SendmailUtil {
    /**
     * 发送邮件
     * 
     */
    public static void sendHtmlEmail(String title, String content,String tofrom) {
    	String whousername=PropertiesUtil.getConfig("mail_account");
    	String auth=PropertiesUtil.getConfig("mail_passwd");
    	Properties props = new Properties();
	    // 开启debug调试
	    props.setProperty("mail.debug", "true");
	    // 发送服务器需要身份验证
	    props.setProperty("mail.smtp.auth", "true");
	    // 设置邮件服务器主机名
	    props.setProperty("mail.host", "smtp.qq.com");
	    // 发送邮件协议名称
	    props.setProperty("mail.transport.protocol", "smtp");
	    try {
	    	MailSSLSocketFactory sf = new MailSSLSocketFactory();
	    	sf.setTrustAllHosts(true);
	    	props.put("mail.smtp.ssl.enable", "true");
	    	props.put("mail.smtp.ssl.socketFactory", sf);
	    	Session session = Session.getInstance(props);
	    	
	    	Message msg = new MimeMessage(session);

	    	//MimeMultipart类是一个容器类,包含MimeBodyPart类型的对象  
            Multipart mainPart = new MimeMultipart();  
            MimeBodyPart messageBodyPart = new MimeBodyPart();//创建一个包含HTML内容的MimeBodyPart  
            //设置HTML内容  
            messageBodyPart.setContent(content,"text/html; charset=utf-8");  
            mainPart.addBodyPart(messageBodyPart);
            
            msg.setSubject(title);
            msg.setContent(mainPart);
	    	msg.setFrom(new InternetAddress(whousername));
	    	Transport transport = session.getTransport();
//	    	transport.connect("smtp.exmail.qq.com", whousername, auth);
	    	transport.connect("smtp.exmail.qq.com", whousername, auth);
			transport.sendMessage(msg, new Address[] {new InternetAddress(tofrom)});
			transport.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
    }
 
    public static void main(String[] args) {
        SendmailUtil se = new SendmailUtil();
        SendmailUtil.sendHtmlEmail("技术测试", "技术测试", "2392249802@qq.com");
    }
    
}

 

© 著作权归作者所有

共有 人打赏支持
wagnqi0321
粉丝 0
博文 15
码字总数 8077
作品 0
昌平
程序员
私信 提问
Jenkins 教程(一)实现自动化打包及邮件通知

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

FantJ
05/26
0
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
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
Spring Cloud 2.x系列之springboot发送邮件

虽然现在短信验证已经最流行也是最常用的验证方式;但是邮件验证还是必不可少,依然是网站的必备功能之一。什么注册验证,忘记密码或者是给用户发送营销信息都是可以使用邮件发送功能的。最早...

技术小能手
10/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

css hack

浏览器的兼容性一直是个头疼的问题,使用“欺骗”技术可使各个浏览器效果一致,花了些时间整理了各个浏览器的HACK,主要包括IE系列和最新版本的Chrome、Safari、Firefox、 Opera,比较全面的...

kitty1116
15分钟前
0
0
zookeeper脑裂问题

一、为什么zookeeper要部署基数台服务器? 二、zookeeper脑裂(Split-Brain)问题 2.1、什么是脑裂? 2.2、什么原因导致的? 2.2、zookeeper是如何解决的? 一、为什么zookeeper要部署基数台...

tantexian
21分钟前
1
0
Spring事务传播行为详解

前言 Spring在TransactionDefinition接口中规定了7种类型的事务传播行为。事务传播行为是Spring框架独有的事务增强特性,他不属于的事务实际提供方数据库行为。这是Spring为我们提供的强大的...

码代码的小司机
32分钟前
2
0
Android设备通过fastboot刷入TWRP

方法一:通过fastboot刷入TWRP的方式 首先去TWRP官网下载TWRP安装文件https://twrp.me/Devices/ 1.进入bootloader adb reboot bootloader 也可在开机时,同时按住电源键+音量减,进入bootloa...

robslove
36分钟前
0
0
为何译为“东家机”和“宾客机”

学习过虚拟化、云计算的人大概都知道,并且都在自己的电脑上安装KVM,如下图所示: 什么情况?不过是在物理机的Windows 10上安装了VMware;在VMware上安装了Linux CentOS 7操作系统;又在其上...

大别阿郎
51分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部