Heutzutage spielt E -Mail in unserem Leben eine immer wichtigere Rolle, und jeder von uns wird sich damit befassen (zumindest von Zeit zu Zeit erhalten wir unerklärliche Spam). Bei der Arbeit kann die Verwendung von E -Mails zur Kommunikation unsere Arbeit nachvollziehbar und formeller machen. Dies wird manuell von uns betrieben. Im Leben sendet die Website nach der Registrierung eines Kontos auf einer Website automatisch eine willkommene E -Mail und bittet uns, zu bestätigen, ob sie sich registrieren soll, um eine böswillige Registrierung zu verhindern. Dies ist natürlich unmöglich, es manuell zu bedienen, wie wir arbeiten. Javamail in 13 Kerntechnologien von Java bietet uns APIs für den Betrieb mit E -Mails.
1. Mailserver
Um E -Mail -Funktionen im Internet bereitzustellen, muss ein dedizierter E -Mail -Server verfügbar sein. Eine große Anzahl von E -Mail -Servern wird im Internet eingerichtet. Websites wie Sina.com, QQ.com, 163.com bieten beispielsweise kostenlose E -Mail -Server für die Öffentlichkeit an, und viele Unternehmen bieten auch E -Mail -Server für interne Mitarbeiter an, die E -Mails voneinander senden und empfangen können. Was ist also die Funktion des Mailservers? Es kann uns helfen, E -Mails zu senden, E -Mails zu erhalten und uns E -Mail -Pickup -Dienste zur Verfügung zu stellen. Dies ähnelt der Post im wirklichen Leben. Es kann nicht nur E -Mails erhalten, sondern auch Dienste zur Abholung von E -Mails anbieten und uns auch bei der Senden von E -Mails helfen. Die folgenden Bilder veranschaulichen die Funktionen des Mailservers anschaulich
(1) von Benutzern gelieferte E -Mails erhalten;
(2) Leiten Sie die vom Benutzer gesendete E -Mail an den Ziel -Mail -Server.
(3) E -Mails erhalten, die von anderen Mail -Servern weitergeleitet werden, und speichern Sie die E -Mails in der von ihnen verwalteten Mailbox des Benutzers.
(4) Nutzern, die E -Mails lesen, Lesedienste anbieten.
Mailserver können gemäß Kommunikationsprotokollen in zwei Typen unterteilt werden: SMTP Server und POP3/IMAP -Server. Die Funktionen 1, 2 und 3 in der obigen Abbildung werden vom SMTP -Server vervollständigt, während die Funktionen 4 vom POP3 -Server ausgefüllt werden.
2. E -Mail
Auf jedem E -Mail -Server können mehrere E -Mail -Adressen geöffnet werden. Die E -Mail -Adresse wird auch als E -Mail -Adresse bezeichnet. Es ähnelt der Mailingadresse im wirklichen Leben. Benutzer können E -Mails von anderen erhalten und über diese Adresse E -Mails an andere senden. Um eine E -Mail zu erhalten, müssen Sie sich auf dem Mailserver bewerben. Um genau zu sein, ist die E -Mail tatsächlich ein Konto, das der Benutzer auf dem Mailserver beantragt. Der Mailserver speichert die empfangene E -Mail an den für ein bestimmtes Konto zugewiesenen Mailbox -Speicherplatz (daher müssen wir unsere E -Mail regelmäßig reinigen, da wir sonst keine neue E -Mail erhalten können, wenn der zugewiesene Speicherplatz den zugewiesenen Speicherplatz überschreitet). Der Benutzer meldet sich beim Mailserver an, um die von der Adresse empfangenen E -Mail -Nachrichten über den von ihm angeforderten Benutzernamen und Passwort zu überprüfen.
3.. Der Übertragungsprozess von E -Mails
Der Übertragungsprozess von E -Mail kann durch die folgende Abbildung dargestellt werden
Die durchgeführte Linienprozessbeschreibung in der obigen Abbildung:
1. Nach dem Mail -Client von [email protected] stellt sich eine Netzwerkverbindung mit dem SMTP -Server von Sina her, melden Sie sich mit dem Benutzernamen und Kennwort von LiSI an und verwendet SMTP -Protokoll, um die E -Mail an SMTP -Server von SINA zu senden.
2. Nach Erhalt der von [email protected] eingereichten Adresse wird der SMTP -Server von Sina zunächst festgestellt, ob die E -Mail -Adresse des Empfängers in die Zuständigkeit des SMTP -Servers basiert, basierend auf dem Adresssuffix des Empfängers. In diesem Fall wird die Mail direkt in der E -Mail -Adresse des Empfängers gespeichert. Andernfalls wird der SMTP -Server von Sina den DNS -Server für den MX -Datensatz des Domänennamens abfragen, der durch das Suffix der E -Mail -Adresse des Empfängers (SOHU.com) dargestellt wird, um die SMTP -Serverinformationen von SOHU zu erhalten, und dann eine Verbindung mit dem SMTP -Server von SOHU von SOHU zu verwenden, um den SOHU -SMTP -Server zu senden.
3. Nachdem der SMTP -Server von SOHO die E -Mail vom SMTP -Server von Sina erhalten hat, wird auch festgelegt, ob die E -Mail in der Zuständigkeit des SMTP -Servers basierend auf der Adresse des Empfängers fällt. Wenn ja, speichern Sie die E -Mail direkt im Mailbox des Empfängers. Andernfalls kann der SMTP -Server von Sohu die E -Mail weiterhin weiterleiten.
V. Wenn ja, verwenden Sie POP3- oder IMAP -Protokoll, um die E -Mail in der Mailbox zu lesen.
Der gepunktete Linienvorgang ähnelt dem durchgezogenen Leitungsvorgang und wird nicht mehr wiederholt.
Die Javamail-API ist ein von Sun übernommenes Standard-Entwicklungspaket, um Java-Entwicklern zu erleichtern, solide E-Mails in Bewerbungen zu senden und zu empfangen. Es unterstützt einige häufig verwendete E -Mail -Protokolle wie SMTP, POP3, IMAP und MIME. Um diese API zu verwenden, müssen Sie natürlich zuerst das entsprechende JAR -Paket herunterladen. Die neueste Version ist 1.5.6, Download -Adresse: https://java.net/projects/javamail/pages/home.
Die Javamail -API kann normalerweise gemäß ihren Funktionen in die folgenden drei Kategorien unterteilt werden:
1. API zum Erstellen und Parsen von E -Mail -Inhalten: Die Nachrichtenklasse ist die Kern -API zum Erstellen und Parsen von E -Mails, und ihr Instanzobjekt repräsentiert eine E -Mail.
2. API zum Senden von E -Mails: Die Transportklasse ist die Kern -API -Klasse zum Senden von E -Mails. Das Instanzobjekt repräsentiert das E -Mail -Senden von Objekt, das ein bestimmtes E -Mail -Sendenprotokoll wie das SMTP -Protokoll implementiert.
3. API zum Empfang von E -Mails: Die Store -Klasse ist die Kern -API -Klasse zum Empfangen von E -Mails. Das Instanzobjekt repräsentiert das E -Mail -Empfangsobjekt, das ein bestimmtes E -Mail -Empfangsprotokoll wie das POP3 -Protokoll implementiert.
Sitzungsklasse:
Die Sitzungsklasse wird verwendet, um die von der gesamten Anwendung erforderlichen Umgebungsinformationen zu definieren und Sitzungsinformationen für den Client zu sammeln, um eine Netzwerkverbindung mit dem Mailserver herzustellen, z. B. den Hostnamen, die Portnummer und das Versenden und Empfangen von E -Mails, das verwendet wird. Sitzungsobjekte erstellen Transport- und Speicherobjekte für die E -Mail -Übertragung und -empfang, basierend auf diesen Informationen und bieten Informationen beim Erstellen von Nachrichtenobjekten für Clients.
Die Beziehungen der oben genannten 4 Klassen sind wie folgt:
Der größte Teil des oben genannten Inhalts wird aus dem Buch "Detaillierte Erklärung der Java -Mail -Entwicklung" ausgewählt. Nächster ArtikelBegernner von Javamail Der zweite Artikel Erstellen Sie E -Mails, wie Sie E -Mails mit der von Javamail bereitgestellten API erstellen.