1. 程式人生 > >java 用Apache Commons Email發郵件

java 用Apache Commons Email發郵件

所需jar包:commons-email-1.4.jar和mail-1.4.1jar

SimpleEmail 用於傳送普通文字郵件

package liu.email;

import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.SimpleEmail;
public class MyEmail {
	public static void main(String[] args){
		SimpleEmail email = new SimpleEmail();
		//設定傳送郵件的伺服器
		email.setHostName("smtp.163.com");
		//設定登入郵箱賬號密碼
		email.setAuthentication("
[email protected]
", "xxx"); try { //設定傳送郵件的郵箱地址和名字 email.setFrom("[email protected]","xx"); //設定安全連結 email.setSSLOnConnect(true); //設定接收的郵箱 email.addTo("[email protected]"); //郵箱主題 email.setSubject("主題"); //內容 email.setMsg("內容ss"); email.send(); } catch (EmailException e) { e.printStackTrace(); } } }

MultiPartEmail:向電子郵件新增附件,您需要使用MultiPartEmail類。此類的工作方式與SimpleEmail類似,可用傳送圖片等

// 建立附件
		EmailAttachment attachment = new EmailAttachment();
		attachment.setPath("1.png");
		// 定義為附件
		attachment.setDisposition(EmailAttachment.ATTACHMENT);
		// 設定附件描述
		attachment.setDescription("圖片描述");
		// 設定附件名 (預設為原檔名)
//		  attachment.setName("");

		// 建立電子郵件
		MultiPartEmail email = new MultiPartEmail();
		// 設定傳送郵件的伺服器
		email.setHostName("smtp.163.com");
		// 設定登入郵箱賬號密碼
		email.setAuthentication("xxx", "xxx");
		// 設定傳送郵件的郵箱
		email.setFrom("
[email protected]
", "劉"); // 設定安全連結 email.setSSLOnConnect(true); // 設定接收的郵箱 email.addTo("[email protected]"); // 郵箱主題 email.setSubject("主題"); // 內容 email.setMsg("內容ss"); // 新增附件 email.attach(attachment); // 傳送電子郵件 email.send();

HtmlEmail:傳送HTML格式的電子郵件是使用HtmlEmail類完成的。此類的工作方式與MultiPartEmail類完全相同,其中包含設定html內容的其他方法

	// 建立電子郵件
			HtmlEmail email = new HtmlEmail();
			email.setHostName("smtp.163.com");
			// 設定登入郵箱賬號密碼
			email.setAuthentication("xxxx", "xxxxx");
			// 設定傳送郵件的郵箱
			email.setFrom("[email protected]", "劉");
			// 設定安全連結
			email.setSSLOnConnect(true);
			// 設定接收的郵箱
			email.addTo("[email protected]");
			// 郵箱主題
			email.setSubject("主題");
			
			// 圖片地址
			URL url = new URL("http://b.hiphotos.baidu.com/baike/s%3D220/sign=f4b0c938b3fb43161e1f7d7810a64642/faf2b2119313b07e035df9fb0dd7912396dd8c65.jpg");
			String cid = email.embed(url, "1.png");

			// 設定html訊息
			email.setHtmlMsg("<html>你要的圖片 - <img src=\"cid:" + cid + "\"></html>");
            // 
			// 設定替代訊息 客戶端不支援HTML訊息顯示的文字
			email.setTextMsg("您的電子郵件客戶端不支援HTML訊息");
           
			// 傳送電子郵件
			email.send();