使用SUN的JavaMail配合Apache的Commons.mail包发送一封邮件是如此的简单,简简单单四行必要的代码和一个send命令就顺利 发送了一封简单邮件出去,前提是该邮件简单无比,没有HTTP指令,没有附件。当然如果想要发送HTTP邮件或者带有附件的邮件也不是什么难事。
首先需要准备两个JAR包,一个是SUN的JavaMail,在http://java.sun.com/products/javamail /downloads/index.html下载,还有一个是Apache的CommonsMail组件,在http: //commons.apache.org/downloads/download_email.cgi,下载完成后部署到项目的classpath中 去。
编写一个很小的Java Application,在main函数中如此这般:
可以很轻松从代码的词义和注释看懂整个发送邮件的流程,程序需要引入两个包,配置好classpath后在Eclipse中可以自动找到。
以上代码从newflydd@qq.com邮箱向newflydd@gmail.com中发送了一个主题为Hello,内容为“ JavaMail Testing…… ”的邮件,运行程序后,几乎在同时Firefox插件提示Gmail账户中有新邮件。
截图:
首先需要准备两个JAR包,一个是SUN的JavaMail,在http://java.sun.com/products/javamail /downloads/index.html下载,还有一个是Apache的CommonsMail组件,在http: //commons.apache.org/downloads/download_email.cgi,下载完成后部署到项目的classpath中 去。
编写一个很小的Java Application,在main函数中如此这般:
public static void main(String[] args) { SimpleEmail email=new SimpleEmail();//创建一个简单邮件 email.setHostName("smtp.qq.com");//设置smtp服务器地址,经测试目前QQ邮箱最稳定兼容性也最强,tom、sina和163都存在这样那样的限制 email.setAuthentication("newflydd","××××");//用户名和密码 email.setCharset("utf-8");//设置编码格式 try {//下面代码都需要在服务器验证,所以需要处理异常 email.addTo("newflydd@gmail.com");//添加一个接受地址 email.setFrom("newflydd@qq.com");//设置发送地址 email.setSubject("Hello");//设置主题 email.setMsg("JavaMail Testing……");//设置邮件内容 email.send();//这一句将邮件发送出去 } catch (EmailException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("Success");//如果一直没有异常抛出,运行到这一步邮件就发送成功了 } |
以上代码从newflydd@qq.com邮箱向newflydd@gmail.com中发送了一个主题为Hello,内容为“ JavaMail Testing…… ”的邮件,运行程序后,几乎在同时Firefox插件提示Gmail账户中有新邮件。
截图: