大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 使用Java發送電子郵件

使用Java發送電子郵件

更新時間:2022-11-18 14:29:17 來源:動力節點 瀏覽2139次

有多種方法可以使用 JavaMail API 發送電子郵件。為此,您必須擁有負責發送郵件的 SMTP 服務器。

您可以使用以下技術之一獲取 SMTP 服務器:

安裝和使用任何 SMTP 服務器,例如 Postcast 服務器、Apache James 服務器、cmail 服務器等(或)

使用主機提供商提供的 SMTP 服務器,例如我的 SMTP 服務器是 mail.javatpoint.com(或)

使用其他公司提供的 SMTP 服務器,例如 gmail 等。

在這里,我們將學習以上三種使用 javamail API 發送電子郵件的方法。但是我們應該學習從 Java 應用程序發送電子郵件的基本步驟。

使用 JavaMail API 發送電子郵件的步驟

使用 JavaMail 發送電子郵件有以下三個步驟。它們如下:

獲取存儲主機所有信息的會話對象,如主機名、用戶名、密碼等。

撰寫郵件

發送信息

1.獲取會話對象

javax.mail.Session類提供了兩種獲取session對象的方法,Session.getDefaultInstance()方法和Session.getInstance()方法。您可以使用任何方法來獲取會話對象。

Session類的方法

  方法 描述
1個 public static Session getDefaultInstance(屬性道具) 返回默認會話。
2個 public static Session getDefaultInstance(Properties props,Authenticator auth) 返回默認會話。
3個 public static Session getInstance(屬性道具) 返回新會話。
4個 public static Session getInstance(Properties props,Authenticator auth) 返回新會話。

getDefaultInstance() 方法示例

屬性 properties= new  Properties();  
//填寫主機名等所有信息  
會話 session=Session.getDefaultInstance(properties, null );  

getInstance() 方法示例

屬性 properties= new  Properties();  
//填寫主機名等所有信息  
會話 session=Session.getInstance(properties, null );  

2.撰寫消息

javax.mail.Message 類提供了編寫消息的方法。但它是一個抽象類,所以它的子類 javax.mail.internet.MimeMessage 類最常被使用。

要創建消息,您需要在 MimeMessage 類構造函數中傳遞會話對象。例如:

MimeMessage 消息 = new  MimeMessage(session);  

現在消息對象已經創建,但是要在這個對象中存儲信息,MimeMessage 類提供了很多方法。讓我們看看 MimeMessage 類提供的方法:

MimeMessage類常用方法

  方法 描述
1個 public void setFrom(地址地址) 用于設置 from 標頭字段。
2個 public void addRecipient(Message.RecipientType類型, Address地址) 用于將給定地址添加到收件人類型。
3個 public void addRecipients(Message.RecipientType 類型,Address[] 地址) 用于將給定地址添加到收件人類型。
4個 public void setSubject(字符串主題) 用于設置主題標題字段。
5個 public void setText(字符串文本消息) 用于使用 text/plain MIME 類型將文本設置為消息內容。
6個 public void setContent(Object msg, String contentType) 用于使用給定的 MIME 類型將內容設置為消息內容。

撰寫消息的示例:

MimeMessage 消息 = new  MimeMessage(session);  
message.setFrom( new  InternetAddress( "[email protected]" ));  
message.addRecipient(Message.RecipientType.To,   
新的 互聯網地址(“[email protected]” ));  
message.setHeader( "大家好" );  
message.setText( "您好,這封郵件是為了通知您..." );  

3.發送消息

javax.mail.Transport 類提供發送消息的方法。

Transport類的常用方法

  方法 描述
1個 公共靜態無效發送(消息消息) 用于發送消息。
2個 public static void send(Message message, Address[] address) 用于將消息發送到給定的地址。

發送消息的示例:

傳輸。發送(消息);  

Java發送郵件的簡單例子

在這個例子中,我們將學習如何通過機器上安裝的 SMTP 服務器發送電子郵件,例如 Postcast 服務器、Apache James 服務器、Cmail 服務器等。如果您想使用主機提供商提供的 SMTP 服務器發送電子郵件,請參閱這個之后的例子。

要使用 JavaMail API 發送電子郵件,您需要加載兩個 jar 文件:

郵件.jar

激活.jar

下載這些 jar 文件或到 Oracle 站點下載最新版本。

導入 java.util.*;  
導入 javax.mail.*;  
導入 javax.mail.internet.*;  
導入 javax.activation.*;   
公開課 發送郵件   
{  
 public static void  main(String [] args){    
      字符串 =  "[email protected]" ; //相應地改變  
      String from =  "[email protected]" ;相應地改變  
      字符串主機=  “本地主機” ;//或IP地址    
     //獲取會話對象  
      屬性 properties = System.getProperties();  
      properties.setProperty( "mail.smtp.host" , host);  
      Session session = Session.getDefaultInstance(屬性);    
     //編寫消息  
      嘗試{  
         MimeMessage 消息 =  new  MimeMessage(session);  
         message.setFrom( new  InternetAddress(from));  
         message.addRecipient(Message.RecipientType.TO, new  InternetAddress(to));  
         message.setSubject( "平" );  
         message.setText( "您好,這是發送郵件的例子" );    
         // 發信息  
         傳輸。發送(消息);  
         System.out.println( "消息發送成功...." );    
      } catch  (MessagingException mex) {mex.printStackTrace();}  
   }  
}  

在這個例子中,我們將學習如何通過機器上安裝的 SMTP 服務器發送電子郵件,例如 Postcast 服務器、Apache James 服務器、Cmail 服務器等。如果您想使用主機提供商提供的 SMTP 服務器發送電子郵件,請參閱這個之后的例子。

要運行此示例,您需要加載兩個 jar 文件。有 4 種方法可以加載 jar 文件。其中一種方法是設置類路徑。讓我們看看如何運行這個例子:

加載 jar 文件 c:\> set classpath=mail.jar;activation.jar;.;
編譯源文件 c:\> javac SendEmail.java
由......運營 c:\> java 發送電子郵件

通過主機提供商提供的 SMTP 服務器以 Java 發送電子郵件的示例

如果您使用主機提供商提供的 SMTP 服務器,例如 mail.javatpoint.com,您需要驗證用戶名和密碼。javax.mail.PasswordAuthentication 類用于驗證密碼。

如果您使用 JavaMail API 發送電子郵件,請加載兩個 jar 文件:

郵件.jar

激活.jar

下載這些 jar 文件或到 Oracle 站點下載最新版本。

導入 java.util.Properties;  
導入 javax.mail.*;  
導入 javax.mail.internet.*;    
公共類 SendMailBySite {   
 public static void  main(String[] args) {      
  String host= "mail.javatpoint.com" ;  
  final  String user= "[email protected]" ; //相應地改變  
  最終 字符串密碼= “xxxxx” ;//相應地改變      
  字符串= “[email protected]” ;//相應地改變    
   //獲取會話對象  
   屬性 props =  new  Properties();  
   props.put( "mail.smtp.host" ,host);  
   props.put( "mail.smtp.auth" ,  "true" );       
   Session session = Session.getDefaultInstance(props,  
    新的 javax.mail.Authenticator() {  
      受保護 的 PasswordAuthentication getPasswordAuthentication() {  
    返回新的 PasswordAuthentication(用戶,密碼);   
      }  
    });    
   //編寫消息  
    嘗試 {  
     MimeMessage 消息 =  new  MimeMessage(session);  
     message.setFrom(新的 互聯網地址(用戶));  
     message.addRecipient(Message.RecipientType.TO, new  InternetAddress(to));  
     message.setSubject( "javatpoint" );  
     message.setText( "這是一個使用 JavaMail API 發送電子郵件的簡單程序" );         
    //發送消息  
     傳輸。發送(消息);    
     System.out.println( "消息發送成功..." );     
     }  catch  (MessagingException e) {e.printStackTrace();}  
 }  
}  

正如您在上面的示例中看到的,需要對用戶標識和密碼進行身份驗證。如該程序所示,您可以輕松發送電子郵件。相應地更改用戶名和密碼。讓我們看看如何通過簡單的技術再次運行它:

加載 jar 文件 c:\> set classpath=mail.jar;activation.jar;.;
編譯源文件 c:\> javac SendMailBySite.java
由......運營 c:\> java SendMailBySite

 

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 噜噜色噜噜色 | 好色亚洲 | 欧美日韩性猛交xxxxx免费看 | 久久精品免费观看久久 | 欧美日韩视频在线成人 | 97福利在线| 欧美人成毛片在线播放 | 久久9999国产精品免费 | 激情午夜网 | 视频一区视频二区在线观看 | 欧美一区二区在线观看免费网站 | 四虎影院2019 | 高清色视频 | 精品一区二区三区四区乱码90 | 日韩一级黄色影片 | 真实偷拍激情啪啪对白 | jazz欧美人免费xxxxxx | 日本不卡不码高清免费观看 | 久久久不卡国产精品一区二区 | 久久精品国产在热久久2019 | 中文字幕在线一区 | 亚洲精品不卡午夜精品 | 亚洲伦理久久 | 久久成人18免费网站 | 久操视频在线观看 | 午夜精品久久久久久久99热浪潮 | 天堂成人在线视频 | 国产专区自拍 | 精品国产免费观看 | 久久天天躁夜夜躁2019 | www深夜视频在线观看高清 | 福利视频在线播放 | 4虎最新地址 | 99热这里只有精品国产动漫 | 永久福利视频 | 五月狠狠亚洲小说专区 | 国产精品美女流白浆视频 | 欧美日韩理论 | 久久99精品久久久久久国产人妖 | 狠狠操狠狠干 | 国产精品视频一区二区三区不卡 |