大战熟女丰满人妻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

 

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

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 久久精品国产精品2020 | 国产欧美一区二区三区免费看 | 日本草草视频 | 国产成人精品天堂 | 一本到在线观看视频不卡 | 91视频香蕉 | 亚洲综合一区二区三区四区 | 久久久噜噜噜www成人网 | 日日操免费视频 | 亚洲成在人色婷婷 | 免费观看大片bbb | 精品国产品国语在线不卡丶 | 亚洲日本一区二区三区在线不卡 | www.黄视频 | 国产成人福利在线 | 亚洲免费美女视频 | 日韩伦理亚洲欧美在线一区 | 深夜福利院 | 国产99对白在线播放 | 亚洲免费播放 | 欧美午夜视频一区二区三区 | www.射.com| 免费一级欧美毛片 | 全部免费的毛片在线看青青 | 老司机深夜福利网站 | 99国产精品免费视频观看 | 一级黄色毛片子 | 日本不卡视频免费 | 草的我好爽的网站 | 亚洲欧美另类在线观看 | 热久久国产欧美一区二区精品 | 国产亚洲漂亮白嫩美女在线 | 国产一级特黄高清免费大片 | 久操伊人| 亚洲精品久久九九热 | 亚色在线播放 | 夜夜骚视频 | 青青久在线视频免费视频 | 久久www免费人成看国产片 | 麻豆精品国产免费观看 | 极品福利 |