java smtp服务器,用Java实现SMTP服务器
下載本文示例代碼
電子郵件傳遞可以由多種協(xié)議來實(shí)現(xiàn)。目前,在Internet 網(wǎng)上最流行的三種電子郵件協(xié)議是SMTP、POP3 和 IMAP,下面分別簡單介紹。 ◆ SMTP 協(xié)議 簡單郵件傳輸協(xié)議(Simple Mail Transfer Protocol,SMTP)是一個(gè)運(yùn)行在TCP/IP之上的協(xié)議,用它發(fā)送和接收電子郵件。SMTP 服務(wù)器在默認(rèn)端口25上監(jiān)聽。SMTP客戶使用一組簡單的、基于文本的命令與SMTP服務(wù)器進(jìn)行通信。在建立了一個(gè)連接后,為了接收響應(yīng),SMTP客戶首先發(fā)出一個(gè)命令來標(biāo)識(shí)它們的電子郵件地址。如果SMTP服務(wù)器接受了發(fā)送者發(fā)出的文本命令,它就利用一個(gè)OK響應(yīng)和整數(shù)代碼確認(rèn)每一個(gè)命令。客戶發(fā)送的另一個(gè)命令意味著電子郵件消息體的開始,消息體以一個(gè)圓點(diǎn)“.”加上回車符終止。 ◆ POP3 協(xié)議 郵局協(xié)議(Post Office Protocol Version 3,POP3)提供了一種對(duì)郵件消息進(jìn)行排隊(duì)的標(biāo)準(zhǔn)機(jī)制,這樣接收者以后才能檢索郵件。POP3服務(wù)器也運(yùn)行在TCP/IP之上,并且在默認(rèn)端口110上監(jiān)聽。在客戶和服務(wù)器之間進(jìn)行了初始的會(huì)話之后,基于文本的命令序列可以被交換。POP3客戶利用用戶名和口令向POP3服務(wù)器認(rèn)證。POP3中的認(rèn)證是在一種未加密的會(huì)話基礎(chǔ)之上進(jìn)行的。POP3客戶發(fā)出一系列命令發(fā)送給POP3服務(wù)器,如:請(qǐng)求客戶郵箱隊(duì)列的狀態(tài)、請(qǐng)求列出的郵箱隊(duì)列的內(nèi)容和請(qǐng)求檢索實(shí)際的消息。POP3代表一種存儲(chǔ)轉(zhuǎn)發(fā)類型的消息傳遞服務(wù)。現(xiàn)在,大部分郵件服務(wù)器都采用SMTP發(fā)送郵件,同時(shí)使用POP3接收電子郵件消息。 ◆ IMAP 協(xié)議 Internet 消息訪問協(xié)議(Internet Message Access Protocol,IMAP)是一種電子郵件消息排隊(duì)服務(wù),它對(duì)POP3的存儲(chǔ)轉(zhuǎn)發(fā)限制提供了重要的改進(jìn)。IMAP也使用基于文本命令的語法在TCP/IP上運(yùn)行,IMAP服務(wù)器一般在默認(rèn)端口143監(jiān)聽。IMAP服務(wù)器允許IMAP客戶下載一個(gè)電子郵件的頭信息,并且不要求將整個(gè)消息從服務(wù)器下載至客戶,這一點(diǎn)與POP3是相同的。IMAP服務(wù)器提供了一種排隊(duì)機(jī)制以接收消息,同時(shí)必須與SMTP相結(jié)合在一起才能發(fā)送消息。 下面以SMTP發(fā)送電子郵件為例講解怎樣用Java 實(shí)現(xiàn)SMTP 服務(wù)器應(yīng)用功能,從而完成郵件的發(fā)送的。 SMTP 命令 SMTP協(xié)議是目前網(wǎng)上流行的發(fā)送E-Mail的協(xié)議,SMTP協(xié)議共有14條命令。不過,發(fā)一封E-Mail只需用如下5條命令就足夠了,分別為: ◆ HELO <SP> <domain> <CRLF> ,與SMTP服務(wù)器握手,傳送本機(jī)域名; ◆ MAIL <SP> FROM:<reverse-path> <CRLF>,傳送發(fā)信者的信箱名稱; ◆ RCPT <SP> TO:<forward-path> <CRLF>,傳送接收者的信箱名稱; ◆ DATA <CRLF>,發(fā)送信件數(shù)據(jù)(包括信頭和信體); ◆ QUIT <CRLF>,退出與SMTP服務(wù)器的連接。 共5頁。 1 2 3 4 5 :
電子郵件傳遞可以由多種協(xié)議來實(shí)現(xiàn)。目前,在Internet 網(wǎng)上最流行的三種電子郵件協(xié)議是SMTP、POP3 和 IMAP,下面分別簡單介紹。 ◆ SMTP 協(xié)議 簡單郵件傳輸協(xié)議(Simple Mail Transfer Protocol,SMTP)是一個(gè)運(yùn)行在TCP/IP之上的協(xié)議,用它發(fā)送和接收電子郵件。SMTP 服務(wù)器在默認(rèn)端口25上監(jiān)聽。SMTP客戶使用一組簡單的、基于文本的命令與SMTP服務(wù)器進(jìn)行通信。在建立了一個(gè)連接后,為了接收響應(yīng),SMTP客戶首先發(fā)出一個(gè)命令來標(biāo)識(shí)它們的電子郵件地址。如果SMTP服務(wù)器接受了發(fā)送者發(fā)出的文本命令,它就利用一個(gè)OK響應(yīng)和整數(shù)代碼確認(rèn)每一個(gè)命令。客戶發(fā)送的另一個(gè)命令意味著電子郵件消息體的開始,消息體以一個(gè)圓點(diǎn)“.”加上回車符終止。 ◆ POP3 協(xié)議 郵局協(xié)議(Post Office Protocol Version 3,POP3)提供了一種對(duì)郵件消息進(jìn)行排隊(duì)的標(biāo)準(zhǔn)機(jī)制,這樣接收者以后才能檢索郵件。POP3服務(wù)器也運(yùn)行在TCP/IP之上,并且在默認(rèn)端口110上監(jiān)聽。在客戶和服務(wù)器之間進(jìn)行了初始的會(huì)話之后,基于文本的命令序列可以被交換。POP3客戶利用用戶名和口令向POP3服務(wù)器認(rèn)證。POP3中的認(rèn)證是在一種未加密的會(huì)話基礎(chǔ)之上進(jìn)行的。POP3客戶發(fā)出一系列命令發(fā)送給POP3服務(wù)器,如:請(qǐng)求客戶郵箱隊(duì)列的狀態(tài)、請(qǐng)求列出的郵箱隊(duì)列的內(nèi)容和請(qǐng)求檢索實(shí)際的消息。POP3代表一種存儲(chǔ)轉(zhuǎn)發(fā)類型的消息傳遞服務(wù)。現(xiàn)在,大部分郵件服務(wù)器都采用SMTP發(fā)送郵件,同時(shí)使用POP3接收電子郵件消息。 ◆ IMAP 協(xié)議 Internet 消息訪問協(xié)議(Internet Message Access Protocol,IMAP)是一種電子郵件消息排隊(duì)服務(wù),它對(duì)POP3的存儲(chǔ)轉(zhuǎn)發(fā)限制提供了重要的改進(jìn)。IMAP也使用基于文本命令的語法在TCP/IP上運(yùn)行,IMAP服務(wù)器一般在默認(rèn)端口143監(jiān)聽。IMAP服務(wù)器允許IMAP客戶下載一個(gè)電子郵件的頭信息,并且不要求將整個(gè)消息從服務(wù)器下載至客戶,這一點(diǎn)與POP3是相同的。IMAP服務(wù)器提供了一種排隊(duì)機(jī)制以接收消息,同時(shí)必須與SMTP相結(jié)合在一起才能發(fā)送消息。 下面以SMTP發(fā)送電子郵件為例講解怎樣用Java 實(shí)現(xiàn)SMTP 服務(wù)器應(yīng)用功能,從而完成郵件的發(fā)送的。 SMTP 命令 SMTP協(xié)議是目前網(wǎng)上流行的發(fā)送E-Mail的協(xié)議,SMTP協(xié)議共有14條命令。不過,發(fā)一封E-Mail只需用如下5條命令就足夠了,分別為: ◆ HELO <SP> <domain> <CRLF> ,與SMTP服務(wù)器握手,傳送本機(jī)域名; ◆ MAIL <SP> FROM:<reverse-path> <CRLF>,傳送發(fā)信者的信箱名稱; ◆ RCPT <SP> TO:<forward-path> <CRLF>,傳送接收者的信箱名稱; ◆ DATA <CRLF>,發(fā)送信件數(shù)據(jù)(包括信頭和信體); ◆ QUIT <CRLF>,退出與SMTP服務(wù)器的連接。 共5頁。 1 2 3 4 5 :
下載本文示例代碼
用Java實(shí)現(xiàn)SMTP服務(wù)器用Java實(shí)現(xiàn)SMTP服務(wù)器用Java實(shí)現(xiàn)SMTP服務(wù)器用Java實(shí)現(xiàn)SMTP服務(wù)器用Java實(shí)現(xiàn)SMTP服務(wù)器用Java實(shí)現(xiàn)SMTP服務(wù)器用Java實(shí)現(xiàn)SMTP服務(wù)器用Java實(shí)現(xiàn)SMTP服務(wù)器用Java實(shí)現(xiàn)SMTP服務(wù)器用Java實(shí)現(xiàn)SMTP服務(wù)器用Java實(shí)現(xiàn)SMTP服務(wù)器用Java實(shí)現(xiàn)SMTP服務(wù)器用Java實(shí)現(xiàn)SMTP服務(wù)器用Java實(shí)現(xiàn)SMTP服務(wù)器用Java實(shí)現(xiàn)SMTP服務(wù)器
閱讀(105) | 評(píng)論(0) | 轉(zhuǎn)發(fā)(0) |
總結(jié)
以上是生活随笔為你收集整理的java smtp服务器,用Java实现SMTP服务器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 标准机器学习数据集
- 下一篇: Java课设——文本编辑器