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