logo

Samouczek JavaMaila

  1. API poczty Java
  2. Protokoły używane w API JavaMail
  3. SMTP
  4. MUZYKA POP
  5. IMAP
  6. MIM
  7. NNTP i inni
  1. Architektura poczty Java
  2. Klasy podstawowe interfejsu API poczty Java

The JavaMail to API służące do tworzenia, pisania i odczytywania wiadomości elektronicznych (e-maili).

Interfejs API JavaMail zapewnia niezależną od protokołu i platformę platformę do wysyłania i odbierania wiadomości e-mail.

dziedziczenie javy

The javax.mail I aktywacja javax.mail package zawiera podstawowe klasy interfejsu API JavaMail.

Funkcję JavaMail można zastosować do wielu wydarzeń. Można go użyć w momencie rejestracji użytkownika (wysłanie powiadomienia, np. z podziękowaniem za zainteresowanie moją witryną), zapomnienia hasła (wysłanie hasła na adres e-mail użytkownika), wysyłania powiadomień o ważnych aktualizacjach itp. Zatem mogą być różne zastosowania interfejsu API poczty Java.



Czy wiesz ?
  • Jak wysyłać i odbierać wiadomości e-mail za pomocą interfejsu API JavaMail?
  • Jak wysłać e-mail przez serwer Gmail?
  • Jak wysyłać i odbierać wiadomości e-mail z załącznikami?
  • Jak wysłać wiadomość e-mail z zawartością HTML, w tym obrazami?
  • Jak przekazać dalej i usunąć wiadomość e-mail?

Protokoły używane w API JavaMail

Istnieje kilka protokołów używanych w interfejsie API JavaMail.
  • SMTP
  • MUZYKA POP
  • IMAP
  • MIM
  • NNTP i inne

SMTP

SMTP to skrót od prostego protokołu przesyłania poczty. Zapewnia mechanizm dostarczania wiadomości e-mail. Jako serwera SMTP możemy używać serwera Apache James, serwera Postcast, serwera cmmail itp. Ale jeśli kupimy przestrzeń hosta, serwer SMTP jest domyślnie dostarczany przez dostawcę hosta. Na przykład mój serwer smtp to mail.javatpoint.com. Jeśli korzystamy z serwera SMTP dostarczonego przez dostawcę usług hostingowych, do wysyłania i odbierania wiadomości e-mail wymagane jest uwierzytelnianie.

MUZYKA POP

POP jest akronimem protokołu pocztowego, znanego również jako POP3. Zapewnia mechanizm odbierania wiadomości e-mail. Zapewnia obsługę pojedynczej skrzynki pocztowej dla każdego użytkownika. Jako serwera POP możemy używać serwera Apache James, serwera cmmail itp. Jeśli jednak kupimy przestrzeń hosta, serwer POP jest domyślnie dostarczany przez dostawcę hosta. Na przykład serwer pop dostarczony przez dostawcę hosta dla mojej witryny to mail.javatpoint.com. Protokół ten jest zdefiniowany w dokumencie RFC 1939.

IMAP

IMAP to skrót od protokołu Internet Message Access Protocol. IMAP to zaawansowany protokół odbierania wiadomości. Zapewnia obsługę wielu skrzynek pocztowych dla każdego użytkownika, a ponadto skrzynka pocztowa może być współdzielona przez wielu użytkowników. Jest zdefiniowany w RFC 2060.

MIM

Multiple Internet Mail Extension (MIME) informuje przeglądarkę o tym, co jest wysyłane, np.: załącznik, format wiadomości itp. Nie jest to protokół przesyłania poczty, ale jest używany przez Twój program pocztowy.

NNTP i inni

Istnieje wiele protokołów dostarczanych przez dostawców zewnętrznych. Niektóre z nich to protokół przesyłania wiadomości sieciowych (NNTP), bezpieczne uniwersalne rozszerzenia poczty internetowej (S/MIME) itp.


Architektura JavaMaila

Aplikacja Java korzysta z interfejsu API JavaMail do tworzenia, wysyłania i odbierania wiadomości e-mail. Interfejs API JavaMail wykorzystuje SPI (interfejs dostawcy usług), który zapewnia usługi pośredniczące aplikacji Java w celu obsługi różnych protokołów. Rozumiemy to na podstawie rysunku podanego poniżej:

Architektura API JavaMail

Podstawowe klasy API JavaMail

W interfejsie API Java Mail używane są dwa pakiety: javax.mail i javax.mail.internet. Pakiety te zawierają wiele klas dla interfejsu API Java Mail. Oni są:

najwyższe polecenie Uniksa
  • Klasa javax.mail.Session
  • Klasa javax.mail.Message
  • Klasa javax.mail.internet.MimeMessage
  • Klasa javax.mail.Address
  • klasa javax.mail.internet.InternetAddress
  • Klasa javax.mail.Authenticator
  • Klasa javax.mail.PasswordAuthentication
  • Klasa javax.mail.Transport
  • Klasa javax.mail.Store
  • Klasa javax.mail.Folder itp.

Dowiemy się o tych klasach jeden po drugim, gdy zostaną one wykorzystane.