java 使用 mail 发送邮件
2015-11-16 17:12
555 查看
使用maven 依赖
发送代码
<dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4</version> </dependency>
发送代码
public class MailFactory { public static MailSender newMailSenderInstance(String host, String user, String password) { MailSender mailSender = new MailSender(host, user, password); return mailSender; } public static class MailSender { private String host; private String user; private String password; private MailSender(String host, String user, String password) { super(); this.host = host; this.user = user; this.password = password; } public void send(String to, String subject, String content) { this.send(user, to, subject, content, Boolean.FALSE); } public void sendHtml(String to, String subject, String content) { this.send(user, to, subject, content, Boolean.TRUE); } private void send(String from, String to, String subject, String content, boolean isHtml) { Properties props = new Properties(); props.put("mail.smtp.host", host); // 指定SMTP服务器 props.put("mail.smtp.auth", "true"); // 指定是否需要SMTP验证 if(to.contains(";")) { String[] toArr = to.split(";"); for (String toItem: toArr) { send(toItem, subject, content); } } else { try { Session mailSession = Session.getDefaultInstance(props); Message message = new MimeMessage(mailSession); message.setFrom(new InternetAddress(from)); // 发件人 message.addRecipient(Message.RecipientType.TO, new InternetAddress(to)); // 收件人 message.setSubject(subject); // 邮件主题 if (isHtml) { //指定邮箱内容及ContentType和编码方式 message.setContent(content, "text/html;charset=utf-8"); } else { message.setText(content); } message.saveChanges(); Transport transport = mailSession.getTransport("smtp"); transport.connect(host, user, password); transport.sendMessage(message, message.getAllRecipients()); transport.close(); } catch(Exception e) { e.printStackTrace(); } } } } }
相关文章推荐
- spring mvc 框架搭建及详解
- MyEclipse2014 常用设置优化
- eclipse上单步调试Hive
- springmvc前台往后传值的几种方式
- java中的排序方法
- Spring AOP在Bean生命周期中的调用时机
- 加密解密java
- spring 定时任务的写法
- java加密解密简单列子
- Java Maven项目打包部署流程
- android推送:eclipse paho mqtt 项目在android studio环境下的源码
- spring+mybatis编译错误
- 从”JAVA“而终 24:BOM以及DOM讲解
- 源码分析:Java对象的内存分配
- eclipse插件
- java 内存分配
- JAVA字符串判等(== 与 equals)
- 15-11-16 Eclipse 操作菜单汉译之 Search [搜索]
- java 堆和栈
- Struts2中json的使用总结