Posielanie e-mailov s prílohami v prostredí Java

1. Prehľad

V tomto rýchlom výučbe sa naučíme, ako pomocou aplikácie odosielať e-maily s jednou a viacerými prílohami v prostredí Java JavaMail API.

2. Nastavenie projektu

V tomto článku vytvárame jednoduchý projekt Maven s javax.mail závislosť:

 javax.mail mail 1.5.0-b01 

3. Posielanie pošty s prílohami

Najskôr musíme nakonfigurovať poverenia poskytovateľa e-mailových služieb. Potom Session objekt sa vytvorí poskytnutím e-mailového hostiteľa, portu, používateľského mena a hesla. Všetky tieto podrobnosti poskytuje služba hostiteľa e-mailu. Pre náš kód môžeme použiť akékoľvek falošné testovacie servery SMTP.

Session objekt bude fungovať ako továreň na pripojenie na spracovanie konfigurácie a autentifikácie pre JavaMail.

Teraz, keď máme Session objekt, posuňme sa ďalej a tvorme MimeMessage a MimeBodyPart objekt. Na vytvorenie e-mailovej správy používame tieto objekty:

Správa správy = nová MimeMessage (relácia); message.setFrom (nová internetová adresa (z)); message.setRecipients (Message.RecipientType.TO, InternetAddress.parse (do)); message.setSubject ("Testovací predmet pošty"); BodyPart messageBodyPart = nový MimeBodyPart (); messageBodyPart.setText ("telo pošty"); 

Vo vyššie uvedenom úryvku sme vytvorili MimeMessage objekt s požadovanými podrobnosťami, ako sú od, do a predmet. Potom máme MimeBodyPart objekt s telom e-mailu.

Teraz musíme vytvoriť ďalší MimeBodyPart pridať prílohu do našej pošty:

MimeBodyPart attachmentPart = nový MimeBodyPart (); attachmentPart.attachFile (nový súbor ("C: \ Document1.txt")); 

Teraz sme dvaja MimeBodyPart objekty pre jednu poštovú reláciu. Musíme si ho teda vytvoriť MimeMultipart objekt a potom pridajte oba MimeBodyPart predmety do nej:

Viacdielne viacdielne = nový MimeMultipart (); multipart.addBodyPart (messageBodyPart); multipart.addBodyPart (attachmentPart); 

Nakoniec MimeMultiPart sa pridáva k MimeMessage namietajte ako náš obsah pošty a Transport.send () na odoslanie správy je použitá metóda:

message.setContent (viacdielny); Transport.send (správa); 

Ak to zhrnieme, Správa obsahuje MimeMultiPart ktorý ďalej obsahuje viac MimeBodyPart (s). Takto zostavujeme kompletný e-mail.

Ak chcete navyše odoslať viac príloh, môžete jednoducho pridať ďalšiu MimeBodyPart.

4. Záver

V tomto tutoriáli sme sa naučili, ako odosielať e-maily s jednou a viacerými prílohami v prostredí Java.

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