JavaMail的使用

首先導入座標

<dependency>

<groupId>javax.mail</groupId>

<artifactId>mail</artifactId>

</dependency>

 

1.只發送正文

// 創建郵件服務連接

Session session = Session.getInstance(Properties props,new Authenticator(){

Return new PasswordAnthentication("發件人的郵箱","發件人的郵箱密碼,注意密碼爲該郵箱SMTP服務器設置的授權碼");

});

 

// 創建郵件

MimeMessage mail = new MimeMessage(session);

// 創建發件人

mail.setFrom(new InternetAddress("發件人的郵箱"));

// 創建收件人

mail.setRecipient(RecipientType.TO,new InternetAddress("收件人郵箱")); // RecipientType.TO 指定收件人或抄送或密送

// 設置標題

mail.setSubject("這是一封普通的測試郵件!");

// 創建正文

mail.setContent("html內容,可以使用html標籤","text/html;charset=utf-8");

 

// 發送郵件

Transport.send(mail);

 

 

 

2.只發送附件

// 創建郵件服務連接

Session session = Session.getInstance(Properties props,new Authenticator(){

Return new PasswordAnthentication("發件人的郵箱","發件人的郵箱密碼,注意密碼爲該郵箱SMTP服務器設置的授權碼");

});

 

// 創建郵件

MimeMessage mail = new MimeMessage(session);

// 創建發件人

mail.setFrom(new InternetAddress("發件人的郵箱"));

// 創建收件人

mail.setRecipient(RecipientType.TO,new InternetAddress("收件人郵箱")); // RecipientType.TO 指定收件人或抄送或密送

// 設置標題

mail.setSubject("這是一封普通的測試郵件!");

// 創建附件 MimeBodyPart

MimeBodyPart body1 = new MimeBodyPart();

body1.attachFile(new File("c:\\java.txt")); // 此時文件名不包含中文字符

 

MimeBodyPart body2 = new MimeBodyPart();

body2.attachFile(new File("c:\\中國加油,武漢加油!.txt")); // 此時文件名包含中文字符,需要進行字符串編碼

String name = "中國加油,武漢加油!.txt";

name = MimeUtility.encodeText(name);

body2.setFileName(name);

 

// 創建附件 MimeMultiPart

MimeMultiPart multis = new MimeMultiPart();

mutils.add(body1);

mutils.add(body2);

 

mail.setContent(multis);

 

// 發送郵件

Transport.send(mail);

 

 

3.發送附件 + 正文

// 創建郵件服務連接

Session session = Session.getInstance(Properties props,new Authenticator(){

Return new PasswordAnthentication("發件人的郵箱","發件人的郵箱密碼,注意密碼爲該郵箱SMTP服務器設置的授權碼");

});

 

// 創建郵件

MimeMessage mail = new MimeMessage(session);

// 創建發件人

mail.setFrom(new InternetAddress("發件人的郵箱"));

// 創建收件人

mail.setRecipient(RecipientType.TO,new InternetAddress("收件人郵箱")); // RecipientType.TO 指定收件人或抄送或密送

// 設置標題

mail.setSubject("這是一封普通的測試郵件!");

// 創建附件 MimeBodyPart

MimeBodyPart body1 = new MimeBodyPart();

body1.attachFile(new File("c:\\java.txt")); // 此時文件名不包含中文字符

 

MimeBodyPart body2 = new MimeBodyPart();

body2.attachFile(new File("c:\\中國加油,武漢加油!.txt")); // 此時文件名包含中文字符,需要進行字符串編碼

String name = "中國加油,武漢加油!.txt";

name = MimeUtility.encodeText(name);

body2.setFileName(name);

 

// 添加正文

MimeBodyPart body3 = new MimeBodyPart();

bodys.setContent("html內容,可以使用html標籤","text/html;charset=utf-8");

 

// 創建附件 MimeMultiPart

MimeMultiPart multis = new MimeMultiPart();

multis.add(body3,0); // 正文必須放在 MimeMultiPart 第一個位置

mutils.add(body1,1);

mutils.add(body2,2);

 

mail.setContent(multis);

 

// 發送郵件

Transport.send(mail);

 

發佈了16 篇原創文章 · 獲贊 13 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章