package com.chauvet.util;

import java.util.Properties;
import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import org.apache.log4j.Logger; /**
* 用于发送jmail邮件
* 需要用到 SMTPAuthenticator.java
* @author WXW
*
*/
public class Jmail {
private String hostSmtp = "smtp.126.com"; // 邮箱smtp
private String hostAddress = "*******@126.com"; // 发件箱地址
private String hostPwd = "pwd"; // 发件箱密码
private static Logger log = Logger.getLogger(Jmail.class.getName()); /**
* 发送jmail
*
* @param title
* email标题
* @param content
* Email内容
* @param toAddress
* 接收邮箱地址 如:514725202@qq.com
*/
public void sendMail(String title, String content, String toAddress) {
try {
String mail = content;
// properties里面包含发送邮件服务器的地址
Properties mailProps = new Properties();
mailProps.put("mail.smtp.host", hostSmtp);
mailProps.put("mail.smtp.auth", "true");
SMTPAuthenticator smtpAuthenticator = new SMTPAuthenticator(hostAddress, hostPwd);
Session mailSession = Session.getDefaultInstance(mailProps,smtpAuthenticator);
MimeMessage message = new MimeMessage(mailSession);
message.setFrom(new InternetAddress(hostAddress));
message.setRecipient(Message.RecipientType.TO, new InternetAddress(toAddress, false));
message.setSubject(title);
message.setText(mail);
Transport.send(message);
} catch (Exception exc) {
log.error("发送邮件 "+title+" 异常!");
exc.printStackTrace();
}
} public static void main(String[] args) {
Jmail aa = new Jmail();
aa.sendMail("标题", "内容", "514725202@qq.com");
System.out.println("Well Done!");
}
}

最新文章

  1. Python自动化之线程进阶篇
  2. 11 TCP/IP 基础与Linux的网络配置
  3. 小白有问题-下雨天给linux装adobe flash player更配
  4. 在C#中开启事务
  5. linux下的基本网络配置
  6. 删除vector中的偶数元素,删除list中的奇数元素
  7. Android Studio 完美修改应用包名
  8. 委托-异步调用-泛型委托-匿名方法-Lambda表达式-事件【转】
  9. mysql basic operation,mysql总结
  10. 线程:Semaphore实现信号灯
  11. JAVA设计模式初探之装饰者模式
  12. psutil的几个例子
  13. gitlab-runner部署
  14. Java开发环境配置(4)--Maven安装 环境变量配置,本地仓库配置---插件安装
  15. No serializer found for class org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer and no properties discovered to create BeanSerializer
  16. 【C++】拷贝构造函数(深拷贝,浅拷贝)详解
  17. 2017-2018-4 20155203《网络对抗技术》Exp3 免杀原理与实践
  18. FineUI Grid中WindowField根据列数据决定是否Enalble
  19. 20165203《Java程序设计》第二周Java学习总结
  20. Quartz 2D中CGContextSaveGState与UIGraphicsPushContext

热门文章

  1. MATLAB 2014a (8.3) Compiler Runtime (MCR)
  2. arm中的几个公式的比较
  3. 开发H5游戏引擎的选择:Egret或Laya?
  4. #if 0 #endif && #if 1 #endif ----待整理
  5. pdflush进程介绍与优化【转】
  6. nyoj115——裸dijksta(点之间最短路)
  7. py-faster-rcnn:在windows上配置
  8. RxJava 中的Map函数原理分析
  9. WebLogic和Tomcat
  10. eureka -2 - 重要配置