工具类:java 邮件发送
2016-08-13 16:11
393 查看
摘要: java 邮件发送
package com.dgy.demo; import java.util.Calendar; import java.util.Properties; import javax.mail.Authenticator; import javax.mail.MessagingException; import javax.mail.PasswordAuthentication; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; import javax.mail.internet.MimeMessage.RecipientType; /** * * 邮件发送工具类 * * @author dgy * */ public class E_MailUtil { @SuppressWarnings("static-access") /** * * @param smtpHost * 为邮件smtp地址 QQ:smtp.qq.com * @param from * 发送者账户 * @param fromUserPassword * 发送者密码 * @param to * 发送给谁 * @param subject * 邮件主题 * @param messageText * 邮件内容 * @param messageType * 邮件类型 * @throws MessagingException */ public boolean sendMessage(String smtpHost, String from, String fromUserPassword, String to, String subject, String messageText, String messageType) throws MessagingException { try { // 第一步:配置javax.mail.Session对象 Properties props = new Properties(); props.put("mail.smtp.host", smtpHost); props.put("mail.smtp.starttls.enable", "true");// 使用 STARTTLS安全连接 // props.put("mail.smtp.port", "25"); //google使用465或587端口 props.put("mail.smtp.auth", "true"); // 使用验证 // props.put("mail.debug", "true"); Session mailSession = Session.getInstance(props, new MyAuthenticator(from, fromUserPassword)); // 第二步:编写消息 InternetAddress fromAddress = new InternetAddress(from); InternetAddress toAddress = new InternetAddress(to); MimeMessage message = new MimeMessage(mailSession); message.setFrom(fromAddress); message.addRecipient(RecipientType.TO, toAddress); message.setSentDate(Calendar.getInstance().getTime()); message.setSubject(subject); message.setContent(messageText, messageType); // 第三步:发送消息 Transport transport = mailSession.getTransport("smtp"); transport.connect(smtpHost, from, fromUserPassword); transport.send(message, message.getRecipients(RecipientType.TO)); return true; } catch (Exception e) { return false; } } public static void main(String[] args) { try { E_MailUtil em = new E_MailUtil(); boolean flag = em.sendMessage("smtp.qq.com", "1256@qq.com", "*******", "1254@qq.com", "你好", "有意联系1254", "text/html;charset=gb2312"); System.out.println(flag); } catch (MessagingException e) { e.printStackTrace(); } } } /** * * 密码验证类。 javax.mail.Authenticator是一个抽象类, * 我们要写MyAuthenticator的密码验证类,该类继承Authenticator实现 * */ class MyAuthenticator extends Authenticator { String userName = ""; String password = ""; public MyAuthenticator() { } public MyAuthenticator(String userName, String password) { this.userName = userName; this.password = password; } protected PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(userName, password); } }
相关文章推荐
- java 邮件发送工具类
- java HtmlEmail发送邮件工具类
- java发送邮件工具类
- Java实现基于SMTP发送邮件的工具类
- 使用java编写一个定期发送邮件通知的工具类
- java发送邮件工具类
- java实现邮件发送功能工具类
- java代码发送邮件工具类
- Java-工具类之发送邮件
- JAVA 邮件发送工具类
- java邮件发送工具类
- java发送邮件完整实例 java邮件工具类
- Java发送邮件工具类
- [JAVA工具类]--邮件发送
- java实现邮件发送功能工具类
- 邮件发送工具类 SendMail.java
- java发送邮件工具类
- java 邮件发送工具类【来源网络自己已经实际应用】
- Java实现QQ邮件发送邮件工具类
- 使用spring框架的JavaMailSender发送邮件工具类