commons-email-1.2.jar: 这是Apache组织下的一个项目,主要就是对java的邮件功能进行了封装,用起来更加方便,简单。
需要的jar包在下面附件里;
下面是一个简单的测试。
如果没有mail.jar,则会有:Exception in thread "main" java.lang.NoClassDefFoundError: javax/mail/Message 这样的错误提示。
下面是一个简单的测试。(发送文本和网页)
Java代码
package com.util.mail;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.SimpleEmail;
public class Send
{
public Send(){
}
public static void main(String[] args){
send();
}
public static void send(){
SimpleEmail email = new SimpleEmail();
email.setTLS(true);
email.setHostName("smtp.qq.com");//设置邮件服务器地址
email.setAuthentication("
[email protected]", "***"); //设置你邮箱和密码(这里我是把企业域名绑定QQ的企业邮箱里,所以可以用QQ的邮件服务器)
try{
email.addTo("
[email protected]","名字");//对方
email.setFrom("
[email protected]","恩方测试"); // 我方
email.setSubject("Java发送邮件测试22222222"); // 标题
email.setCharset("GB2312"); // 设置Charset //设置编码
email.setMsg("这是一封Java程序发出的测试邮件。"); // 发送文本内容
email.setContent("<h1>这是一封Java程序发出的测试邮件111。</h1>","text/html;charset=GB2312");//发送网页内容
email.send();
System.out.println("end");
} catch (EmailException e) {
e.printStackTrace();
}
}
}
package com.util.mail;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.SimpleEmail;
public class Send
{
public Send(){
}
public static void main(String[] args){
send();
}
public static void send(){
SimpleEmail email = new SimpleEmail();
email.setTLS(true);
email.setHostName("smtp.qq.com");//设置邮件服务器地址
email.setAuthentication("
[email protected]", "***"); //设置你邮箱和密码(这里我是把企业域名绑定QQ的企业邮箱里,所以可以用QQ的邮件服务器)
try{
email.addTo("
[email protected]","名字");//对方
email.setFrom("
[email protected]","恩方测试"); // 我方
email.setSubject("Java发送邮件测试22222222"); // 标题
email.setCharset("GB2312"); // 设置Charset //设置编码
email.setMsg("这是一封Java程序发出的测试邮件。"); // 发送文本内容
email.setContent("<h1>这是一封Java程序发出的测试邮件111。</h1>","text/html;charset=GB2312");//发送网页内容
email.send();
System.out.println("end");
} catch (EmailException e) {
e.printStackTrace();
}
}
}
发送附件:
Java代码
package com.util.mail;
import java.net.MalformedURLException;
import org.apache.commons.mail.EmailAttachment;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.MultiPartEmail;
public class AttachmentMailTest {
public static void main(String[] args) throws EmailException,
MalformedURLException {
// 创建一个Email附件
EmailAttachment emailattachment = new EmailAttachment();
emailattachment.setPath("c://biao_05.jpg");
emailattachment.setDisposition(EmailAttachment.ATTACHMENT);
emailattachment.setDescription("This is Smile picture");
emailattachment.setName("img.jpg");
// 创建一个email
MultiPartEmail multipartemail = new MultiPartEmail();
multipartemail.setHostName("smtp.qq.com"); //设置邮件服务器地址
multipartemail.addTo("
[email protected]", "name");//对方
multipartemail.setFrom("
[email protected]", "name");//我方
multipartemail.setAuthentication("
[email protected]", "***");//设置你邮箱和密码(这里我是把企业域名绑定QQ的企业邮箱里,所以可以用QQ的邮件服务器)
multipartemail.setSubject("This is a attachment Email");//标题
multipartemail.setMsg("this a attachment Eamil Test");//文本
// 添加附件
multipartemail.attach(emailattachment);
// 发送邮件
multipartemail.send();
System.out.println("The attachmentEmail send sucessful!!!");
}
}