JAVA发邮件

前言:我使用的apache的commons-email-1.2.jar,不过需要另外加另两个包activation.jar,mail.jar,要不回报java.lang.NoClassDefFoundError: javax/mail/Message的错误

环境:xp,jdk1.6,所需jar在附件中

帮助:commons-email-1.2.jar的api

例子:

 

package util;

import java.net.URL;
import java.text.ParseException;
import java.util.List;
import org.apache.commons.mail.EmailAttachment;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.HtmlEmail;
import vo.User;

public class TestEmail {

	/**
	 * @param args
	 * @throws ParseException
	 */
	public static void main(String[] args) throws ParseException {
		sendEmail();
	}

	public static void sendEmail() {
		try {
			HtmlEmail email = new HtmlEmail();
			email.setDebug(true); // 开启debug模式,可以打印一些信息。

			// 适用126,163
			// email.setHostName("smtp.126.com");// 设置SMTP服务器主机地址
			// email.setSmtpPort(25);// 设置SMTP服务器的端口,默认为25
			// email.setAuthentication("***@126.com", "***");// 设置SMTP服务器登录帐号和密码
			

			// 适用qq
			email.setHostName("smtp.qq.com");// 设置SMTP服务器主机地址
			email.setSmtpPort(465);
			email.setSSL(true);
			email.setTLS(true); // 是否TLS校验,某些邮箱需要TLS安全校验
			email.setAuthentication("**@qq.com", "***");// 设置SMTP服务器登录帐号和密码
			try {

				// 1.基本的邮件发送
				email.setFrom("***@126.com", "lleid");//("地址","姓名")
				email.addTo("***@126.com", "lleid");
				// email.addCc("***@126.com");// 抄送
				// email.addBcc("***@qq.com");// 秘密抄送

				email.setCharset("utf-8"); // 设置邮件的编码
				email.setSubject("Test邮件");// 主题:该邮件包括html格式内容
				email.setMsg("看我能不能发!");// 邮件内容

				// 2.带附件的邮箱
				EmailAttachment attachment = new EmailAttachment();
				attachment.setPath("C:/Users/lleid/Pictures/2014-03-01/010.jpg");// 绝对路径
				// attachment.setURL(new
				// URL("http://www.apache.org/images/asf_logo_wide.gif"));// 附件的URL路径
				attachment.setDisposition(EmailAttachment.ATTACHMENT);
				attachment.setName(attachment.getPath().split("/")[attachment.getPath().split("/").length - 1]);//获取上传文件的名称
				email.attach(attachment);// 把附件绑定到emial
				email.send();// 发送邮件
			} catch (EmailException e) {
				e.printStackTrace();
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

 

 

参考:

1.http://blog.csdn.net/yuaoi/article/details/5818561

2.http://eric-gao.iteye.com/blog/1748482

 

 

你可能感兴趣的:(java,email)