java 網路程式設計

17
Java 網網網網網網 第 15 第 第第 JavaMail 第 JMS(Java Message Service)

Upload: martha-potter

Post on 30-Dec-2015

108 views

Category:

Documents


0 download

DESCRIPTION

Java 網路程式設計. 第 15 章 認識 JavaMail 與 JMS(Java Message Service). 電子郵件與傳訊 (messaging). 電子郵件 (electronic mail) 是相當普遍的網路應用,已經成為很多人每日必用的軟體 在一般的應用系統裡頭也會有電子郵遞的需求,例如一個電子商務的網站可能需要送訂購的資訊給客戶 所謂的傳訊 (messaging) 是指企業內部應用之間的溝通,所以也稱為 enterprise messaging. 電子郵件 (electronic mail) 系統的 架構與原理. 電子郵件系統 的協定. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Java 網路程式設計

Java 網路程式設計

第 15 章 認識 JavaMail 與JMS(Java Message Service)

Page 2: Java 網路程式設計

電子郵件與傳訊 (messaging)

電子郵件 (electronic mail) 是相當普遍的網路應用,已經成為很多人每日必用的軟體

在一般的應用系統裡頭也會有電子郵遞的需求,例如一個電子商務的網站可能需要送訂購的資訊給客戶

所謂的傳訊 (messaging) 是指企業內部應用之間的溝通,所以也稱為 enterprise messaging

Page 3: Java 網路程式設計

電子郵件 (electronic mail) 系統的架構與原理

Page 4: Java 網路程式設計

電子郵件系統 的協定

SMTP(simple mail transfer protocol)協定定義於 RFC 821 文件中,和郵件傳送的程序有關。

POP3(post office protocol version 3)定義於 RFC 1939 中,和如何從 mail server 取得郵件的機制有關, POP3 協定能使用 user name 與 password 從mail server 取得該 user 的郵件。

Page 5: Java 網路程式設計

電子郵件的基本格式

Page 6: Java 網路程式設計

常見的 SMTP 協定的指令

HELO : 確認傳送主機所在的領域(domain) 。

MAIL : 傳送者 (sender) 的名稱。 RCPT : 收信者 (receiver) 的名稱。 DATA : e-mail 的 message body 。

Page 7: Java 網路程式設計

與 SMTP server 溝通

Page 8: Java 網路程式設計

Java 對於電子郵件的支援

SMTP server 在一個 socket port 上等待請求 。

client 程式可以使用 socket 把指令送給SMTP server 。

Java 提供了比 socket 更好用的JavaMail API 來支援電子郵件的應用開發。

Page 9: Java 網路程式設計

運用 JavaMail API 來撰寫傳送 e-mail 的程式

為所開發的應用設定一個 mail session 。 完成 mail session 的設定以後,開始

建立訊息。 建立訊息以後,將訊息傳送出去。

Page 10: Java 網路程式設計

用 Java 建立 e-mail 的應用

傳送 HTML 格式的電子郵件附件夾帶的方法

Page 11: Java 網路程式設計

Multipart 的郵件

Page 12: Java 網路程式設計

電子郵件應用的架構

表列使用者 mailbox 中的郵件。 呈現郵件的內容。 支援郵件的編輯。 傳送郵件。 支援回覆 (reply) 與轉送 (forward) 的

功能。

Page 13: Java 網路程式設計

認識 JMS(Java Messaging Service)

企業內部的應用之間的溝通。 不同企業的應用之間的溝通。 分散式應用中各組成之間的溝通。

Page 14: Java 網路程式設計

應用的架構

Page 15: Java 網路程式設計

利用 message broker 來簡化enterprise messaging

Page 16: Java 網路程式設計

JMS 使用以下兩種messaging domains

point-to-point domain: 跟郵遞服務很像,位址可以預先設定。

publish and subscribe : 建立在內容架構 (content hierarchy) 之上。

Page 17: Java 網路程式設計

Java application server 的管理介面