Posielanie e-mailov pomocou Java

1. Prehľad

V tomto rýchlom výučbe sa pozrieme na odosielanie e-mailov s prílohami a bez príloh - pomocou základnej poštovej knižnice Java.

2. Nastavenie a závislosť projektu

V tomto článku budeme používať jednoduchý projekt založený na Maven so závislosťou na poštovej knižnici Java:

 javax.mail mail 1.5.0-b01 

Najnovšiu verziu nájdete tu.

3. Posielanie obyčajného textu a e-mailu vo formáte HTML

Najskôr musíme nakonfigurovať knižnicu pomocou poverení nášho poskytovateľa e-mailových služieb. Potom vytvoríme a Session ktoré sa použijú pri zostavovaní našej správy na odoslanie.

Konfigurácia sa vykonáva pomocou Java Vlastnosti objekt:

Vlastnosti prop = nové Vlastnosti (); prop.put ("mail.smtp.auth", true); prop.put ("mail.smtp.starttls.enable", "true"); prop.put ("mail.smtp.host", "smtp.mailtrap.io"); prop.put ("mail.smtp.port", "25"); prop.put ("mail.smtp.ssl.trust", "smtp.mailtrap.io");

V konfigurácii vlastností vyššie sme nakonfigurovali e-mailového hostiteľa ako Mailtrap a použijeme tiež port poskytovaný službou.

Poďme teraz ďalej a vytvorme reláciu s našim používateľským menom a heslom:

Relácia session = Session.getInstance (prop, new Authenticator () {@Override chránená PasswordAuthentication getPasswordAuthentication () {vrátiť nové PasswordAuthentication (meno používateľa, heslo);}});

Používateľské meno a heslo poskytuje poskytovateľ poštových služieb spolu s parametrami hostiteľ a port.

Teraz, keď máme e-mail Session objekt, vytvorme a MimSpráva na odoslanie:

Správa správy = nová MimeMessage (relácia); message.setFrom (nová internetová adresa ("[chránený e-mailom]")); message.setRecipients (Message.RecipientType.TO, InternetAddress.parse ("[chránený e-mailom]")); message.setSubject ("Predmet pošty"); String msg = "Toto je môj prvý e-mail používajúci JavaMailer"; MimeBodyPart mimeBodyPart = nový MimeBodyPart (); mimeBodyPart.setContent (msg, "text / html"); Viacdielne viacdielne = nový MimeMultipart (); multipart.addBodyPart (mimeBodyPart); message.setContent (viacdielny); Transport.send (správa);

V úryvku vyššie sme najskôr vytvorili a správa inštancie s potrebnými vlastnosťami - do, z a predmetom. Nasleduje a mimeBodyPartktorý má kódovanie text / html, pretože naša správa je navrhnutá v jazyku HTML.

Ďalšia vec, ktorú sme urobili, je vytvorenie inštancie MimeMultipart objekt, ktorý môžeme použiť na zabalenie mimeBodyPart sme vytvorili.

Nakoniec sme nastavili viacdielne objekt ako obsah nášho správa a použite poslať ()z Doprava namietajte proti odoslaniu pošty.

Môžeme teda povedať, že mimeBodyPartje obsiahnutá v viacdielne ktorá je obsiahnutá v správa. Preto, a viacdielne môže obsahovať viac ako jednu mimeBodyPart.

Na toto sa zameria ďalšia časť.

4. Posielanie e-mailov s prílohou

Ďalej na odoslanie prílohy stačí vytvoriť ďalšiu MimeBodyParta pripojte k nim súbory:

MimeBodyPart attachmentBodyPart = nový MimeBodyPart (); attachmentBodyPart.attachFile (nový súbor ("cesta / k / súboru"));

Potom môžeme pridať novú časť tela do MimeMultipartobjekt, ktorý sme vytvorili skôr:

multipart.addBodyPart (attachmentBodyPart);

To je všetko, čo musíme urobiť.

Opäť sme nastavili viacdielne napríklad ako obsah správa objekt a nakoniec použijeme poslať () posielať poštu.

5. Záver

Na záver sme videli, ako používať natívnu poštovú knižnicu Java na odosielanie e-mailov aj s prílohami.

Celý zdrojový kód je ako vždy k dispozícii na stránkach Github.


$config[zx-auto] not found$config[zx-overlay] not found