Java发邮件简单实现
给出一个Java发送邮件的简单实现。
1、 接口 public interface MailSendServDu { public void sendEmail(String addressee, String subject, String content); } 2、 实现 import javax.mail.*; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; import java.util.Date; import java.util.Map; import java.util.Properties; /** * 邮件发送接口 * @param * @author Wu Jianguo * @version V1.0 * @Description: * @modificationHistory=================重大变更调整记录 * @modify by user: Wu Jianguo * @modify by reason:{方法名}:{原因} * @return * @throws */ public class MailSendServDuImpl implements MailSendServDu{ private Logger logger = Logger.getLogger(this.getClass()); // 初始化连接邮件服务器的会话信息 private Properties properties = null; // 创建Session实例对象 private Session session = null; String fromAddress = null; String fromName = null; String charset = null; public MailSendServDuImpl() { logger.info("发送邮件相关配置初始化......."); Map<String,String> map = PropertiesUtils.getPropertiesValues("/properties/mail.properties"); String turnon = map.get("mail.turnon"); if (Boolean.parseBoolean(turnon)) { String protocol = map.get("mail.protocol"); fromAddress = map.get("mail.fromAddress"); fromName = map.get("mail.fromName"); String host = map.get("mail.host"); String port = map.get("mail.port"); String auth = map.get("mail.auth"); String username = map.get("mail.username"); String password = map.get("mail.password"); String debug = map.get("mail.debug"); charset = map.get("mail.charset"); properties = new Properties(); properties.setProperty("mail.transport.protocol", protocol); properties.setProperty("mail.smtp.host", host); properties.setProperty("mail.smtp.port", port); properties.setProperty("mail.smtp.auth", auth); properties.setProperty("mail.debug", debug); if (Boolean.parseBoolean(auth)) { session = Session.getDefaultInstance(properties, new HatomAuthenticator(username, password)); } else { session = Session.getDefaultInstance(properties, new HatomAuthenticator()); } } } @Override public void sendEmail(String addressee, String subject, String content) { logger.info("发送邮件"); MailSendServDuImpl ps = new MailSendServDuImpl(); try { if (null != properties) { // 创建MimeMessage实例对象 MimeMessage message = new MimeMessage(session); // 设置发件人 message.setFrom(new InternetAddress(fromAddress, fromName)); // 设置邮件主题 message.setSubject(subject); // 设置收件人 message.setRecipient(Message.RecipientType.TO, new InternetAddress(addressee)); // 设置发送时间 message.setSentDate(new Date()); // 设置html内容为邮件正文,指定MIME类型为text/html类型,并指定字符编码 message.setContent(content, "text/html;charset=" + charset); // 保存并生成最终的邮件内容 message.saveChanges(); // 发送邮件 Transport.send(message); } } catch (Exception e) { System.err.println(e.getMessage()); logger.info("发送邮件异常"); } } /** * 向邮件服务器提交认证信息 */ class HatomAuthenticator extends Authenticator { private String username; private String password; public HatomAuthenticator() { super(); } public HatomAuthenticator(String username, String password) { super(); this.username = username; this.password = password; } @Override protected PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(username, password); } } } 3、 配置文件 # 是否打开邮件发送 mail.turnon=true # 邮件发送协议 mail.protocol=smtp # 发信邮箱 mail.fromAddress=XXXX@163.com # 发信人 mail.fromName=XX # smtp端口号 mail.host=smtp.163.com mail.port=25 # 是否需要验证 mail.auth=true # smtp账号 mail.username=XXXX@163.com # smtp密码 mail.password= # 调试级别,0 关闭,1 一般,2较高 mail.debug=0 # 编码 mail.charset=UTF-8
相关推荐
JAVA发送邮件实现,发送邮件内容消息格式化,简单易操作
简单Java邮件发送 上传的文件中有一个Jar包和demo源码
一个及其简单的java发送邮件的实例 附带发邮件所用的jar包
用Java语言实现简单邮件系统 用Java语言实现简单邮件系统 用Java语言实现简单邮件系统
java实现的一个简单邮件程序,含源码
JAVA发送邮件代码实现,资料在附件中,简单易操作,入门基础知识
带邮件发送邮件java实现简单简约适合新手
java实现邮件发送代码,只是一个简单功能的实现,需要的朋友可以下载
这是一个发送邮件的实现,可以下载下来看一下,呵呵哒
实现简单的邮件发送功能,可以使用它实现邮箱验证功能,以及发送通知,代码简洁,使用方便,效率高效。
基于Java的邮件服务器的设计与实现
java简单--邮件发送 是本人自己写的邮件发送 并打包成jar文件 方便实用 使用的时候只需要导jar文件 并且一行代码搞定邮件发送操作 简单方便发送 邮件 下载评论反还积分 邮件发送系统操作: 第一步骤: 将...
电子邮件的应用非常广泛,常见的如在某网站注册了一个账户,自动发送一封激活邮件,通过邮件找回密码,自动批量发送活动信息等。...简单介绍如何通过 Java 代码来创建电子邮件,并连接邮件服务器发送邮件。
java邮件简单实现,超简单,导入两个jar包 mail.jar和activation.jar 但是因为和JavaEE5中的 javaee.jar冲突, 所有删除javaee.jar中的 activation包和mail包
资源中就一个测试类,把发件人资料改成自己的,运行测试方法即可发邮件,简单实用: 1,仅需一行代码; 2,支持附件; 3,支持群发; 4,支持抄送 5,支持任何邮箱服务器(比如QQ,163),如果是自己的服务器,需要...
实现java发送邮件,支持各种邮箱,通过激活码激活账户,代码简单易懂。
通过Java实现的邮件发放功能,可自行设置邮箱类型,有示例代码
简单java邮件发送代码,包括email架包,让你轻松体验java邮件功能!
java 邮件发送简单实现,包括收件人设置、抄送多人等