java免费发送邮件实现
2016-01-07 16:15
561 查看
现在项目上线一段时间了,希望能够在项目中出现异常后邮件通知给相关开发人员。我从网上找了大量的第三方接口(需要花钱)和发送邮件demo。最后选择了一个只需要引入一个jar包和一个工具类的实现,不需要配置文件,具体的工具类代码如下:
需要注意的是:
1、发件人邮箱没有开通pop3/SMTP协议需要开通
2、发件人163邮件发送次数多了,163会提示说账号有安全威胁之类,需要你在163邮箱设置授权
3、项目中需要用到的jar是mail-1.4.5.jar
直接将项目导入eclipse,运行main方法即可完成发送邮件
完整项目下载地址(免积分):http://download.csdn.net/download/zl544434558/9393226
[code]package com.evan.mail; import java.util.Date; import java.util.Properties; import javax.mail.Authenticator; import javax.mail.Message; import javax.mail.MessagingException; import javax.mail.PasswordAuthentication; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.AddressException; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; public class SendMail { public static void main(String[] args) { MessageVo mv = new MessageVo(); mv.setSubject("很遗憾,您的程序出bug了"+new Date()); mv.setText("bug的具体内容为:"+"空指针异常"); mv.setToMailAddress("zhanglong@jijiankang.cn"); sendMail(mv); } public static void sendMail(MessageVo mv ){ final String username = "13641329385@163.com"; final String password = "evan0202"; boolean isSSL = true; String host = "smtp.163.com"; int port = 465; boolean isAuth = true; String from = "13641329385@163.com"; Properties props = new Properties(); props.put("mail.smtp.ssl.enable", isSSL); props.put("mail.smtp.host", host); props.put("mail.smtp.port", port); props.put("mail.smtp.auth", isAuth); Session session = Session.getDefaultInstance(props, new Authenticator() { @Override protected PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(username, password); } }); try { Message message = new MimeMessage(session); message.setFrom(new InternetAddress(from)); message.setSubject(mv.getSubject()); message.setText(mv.getText()); message.addRecipient(Message.RecipientType.TO, new InternetAddress(mv.getToMailAddress())); Transport.send(message); } catch (AddressException e) { e.printStackTrace(); } catch (MessagingException e) { e.printStackTrace(); } System.out.println("发送完毕!"); } }
需要注意的是:
1、发件人邮箱没有开通pop3/SMTP协议需要开通
2、发件人163邮件发送次数多了,163会提示说账号有安全威胁之类,需要你在163邮箱设置授权
3、项目中需要用到的jar是mail-1.4.5.jar
直接将项目导入eclipse,运行main方法即可完成发送邮件
完整项目下载地址(免积分):http://download.csdn.net/download/zl544434558/9393226
相关文章推荐
- JAVA 多态
- Struts2中的包的作用描述
- java内存溢出分析(一)
- Java中的日期(Calendar、Date)
- Java软件工程师等级
- Java Transaction API JAVA事务API
- Java——Java包
- Java 版本LRC校验
- 文件IO java
- Java中如何把一组对象按照其某一个属性值进行排序?
- JAVA线程锁-读写锁
- 搭建Spring环境
- java实现四则运算,难点主要在理解加减乘除优先级以及使用递归
- Java基础之知识总结
- spring自动扫描装配bean
- 多线程 java
- 1-Java继承中多态情况特性下变量,方法,静态方法的访问
- Java基础之接口、内部类、抽象类
- Spring MVC 学习笔记(三)
- 使用Gradle构建Java项目