資源描述:
《基于pop3與smtp協(xié)議的郵件收發(fā)程序的開發(fā)畢業(yè)論文》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、基于POP3與SMTP協(xié)議的郵件收發(fā)程序的開發(fā)一、設(shè)計(jì)思想POP3(PostOfficeProtocol3)即郵局協(xié)議的第3個(gè)版本,它是規(guī)定個(gè)人計(jì)算機(jī)如何連接到互聯(lián)網(wǎng)上的郵件服務(wù)器進(jìn)行收發(fā)郵件的協(xié)議。它是因特網(wǎng)電子郵件的第一個(gè)離線協(xié)議標(biāo)準(zhǔn),POP3協(xié)議允許用戶從服務(wù)器上把郵件存儲(chǔ)到本地主機(jī)(即自己的計(jì)算機(jī))上,同時(shí)根據(jù)客戶端的操作刪除或保存在郵件服務(wù)器上的郵件,而POP3服務(wù)器則是遵循POP3協(xié)議的接收郵件服務(wù)器,用來接收電子郵件的。POP3協(xié)議是TCP/IP協(xié)議族中的一員,,由RFC1939定義。本協(xié)議主要用于支持使用客戶端
2、遠(yuǎn)程管理在服務(wù)器上的電子郵件。POP3是TCP/IP協(xié)議族中的一員,由RFC1939定義。本協(xié)議主要用于支持使用客戶端遠(yuǎn)程管理在服務(wù)器上的電子郵件。提供了SSL加密的POP3協(xié)議被稱為POP3S。POP協(xié)議支持“離線”郵件處理。其具體過程是:郵件發(fā)送到服務(wù)器上,電子郵件客戶端調(diào)用郵件客戶機(jī)程序以連接服務(wù)器,并下載所有未閱讀的電子郵件。這種離線訪問模式是一種存儲(chǔ)轉(zhuǎn)發(fā)服務(wù),將郵件從郵件服務(wù)器端送到個(gè)人終端機(jī)器上,一般是PC機(jī)或MAC。一旦郵件發(fā)送到PC機(jī)或MAC上,郵件服務(wù)器上的郵件將會(huì)被刪除。但目前的POP3郵件服務(wù)器大都可以“
3、只下載郵件,服務(wù)器端并不刪除”,也就是改進(jìn)的POP3協(xié)議。脫機(jī)模型即不能在線操作,POP不支持對服務(wù)器郵件進(jìn)行擴(kuò)展操作,此過程需要更高級的IMAP4協(xié)議來完成。支持POP協(xié)議使用ASCII碼來傳輸數(shù)據(jù)消息,這些數(shù)據(jù)消息可以是指令,也可以是應(yīng)答。SMTP目前已是事實(shí)上的在Internet傳輸E-Mail的標(biāo)準(zhǔn),是一個(gè)相對簡單的基于文本的協(xié)議。在其之上指定了一條消息的一個(gè)或多個(gè)接收者(在大多數(shù)情況下被確定是存在的),然后消息文本就傳輸了??梢院芎唵蔚赝ㄟ^Telnet程序來測試一個(gè)SMTP服務(wù)器,SMTP使用TCP端口25。要為一個(gè)
4、給定的域名決定一個(gè)SMTP服務(wù)器,需要使用MX(MaileXchange)DNS。在20世紀(jì)80年代早期SMTP開始被廣泛地使用。當(dāng)時(shí)它只是作為UUCP的補(bǔ)充,UUCP更適合于處理在間歇連接的機(jī)器間傳送郵件。相反SMTP在發(fā)送和接收的機(jī)器始終都聯(lián)網(wǎng)的情況下工作得最好。SMTP獨(dú)立于特定的傳輸子系統(tǒng),且只需要可靠有序的數(shù)據(jù)流信道支持。SMTP重要特性之一是其能跨越網(wǎng)絡(luò)傳輸郵件,即“SMTP郵件中繼”。通常,一個(gè)網(wǎng)絡(luò)可以由公用因特網(wǎng)上TCP可相互間訪問的主機(jī)、防火墻分隔的TCP/IP網(wǎng)絡(luò)上TCP可相互訪問的主機(jī),以及其他LAN/W
5、AN中的主機(jī)利用非TCP傳輸層協(xié)議組成。使用SMTP,可實(shí)現(xiàn)相同網(wǎng)絡(luò)上處理機(jī)之間的郵件傳輸,也可通過中繼器或網(wǎng)關(guān)是實(shí)現(xiàn)某處理機(jī)與其他網(wǎng)絡(luò)之間的郵件傳輸。在smtp這種方式下,郵件的發(fā)送可能經(jīng)過從發(fā)送端到接收端路徑上的大量中間中繼器或網(wǎng)關(guān)主機(jī)。域名服務(wù)系統(tǒng)(DNS)的郵件交換服務(wù)器可以用來識(shí)別出傳輸郵件的下一跳IP地址。Sendmail是最早實(shí)現(xiàn)SMTP的郵件傳輸代理之一。到2001年至少有50個(gè)程序?qū)MTP實(shí)現(xiàn)為一個(gè)客戶端(消息的發(fā)送者)或一個(gè)服務(wù)器(消息的接受者)。一些其他的流行的SMTP服務(wù)器包括PhilipHazel的
6、exim,IBM的Postfix,D.J.Bernstein的Qmail,以及MicrosoftExchangeServer.由于這個(gè)協(xié)議開始是基于純ASCⅡ文本的,在二進(jìn)制文件上處理得并不好。后來開發(fā)了用來編碼二進(jìn)制文件的標(biāo)準(zhǔn),如MIME,以使其通過SMTP來傳輸。今天,大多數(shù)SMTP服務(wù)器都支持8位MIME擴(kuò)展,它使二進(jìn)制文件的傳輸變得幾乎和純文本一樣簡單。二、算法流程圖-26-基于POP3與SMTP協(xié)議的郵件收發(fā)程序的開發(fā)本程序的核心算法流程圖如下圖所示:圖1程序算法流程圖三、源代碼-26-基于POP3與SMTP協(xié)議的郵
7、件收發(fā)程序的開發(fā)packageframe;importjava.awt.Dimension;importjava.awt.Toolkit;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.awt.event.ItemEvent;importjava.awt.event.ItemListener;importjavax.swing.JButton;importjavax.swing.JComboBox;importjav
8、ax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JOptionPane;importjavax.swing.JPasswordField;importjavax.swing.JTextField;impor