E-mails met bijlagen verzenden in Java

1. Overzicht

In deze korte zelfstudie leren we hoe u e-mails met enkele en meerdere bijlagen in Java kunt verzenden met JavaMail API.

2. Projectconfiguratie

In dit artikel maken we een eenvoudig Maven-project met javax.mail afhankelijkheid:

 javax.mail mail 1.5.0-b01 

3. E-mail met bijlagen verzenden

Eerst moeten we de inloggegevens van de e-mailserviceprovider configureren. Dan de Sessie object wordt gemaakt door de e-mailhost, poort, gebruikersnaam en wachtwoord op te geven. Al deze details worden verstrekt door de e-mailhostservice. We kunnen alle nep-SMTP-testservers gebruiken voor onze code.

Sessie object zal werken als een verbindingsfabriek om de configuratie en authenticatie voor af te handelen JavaMail.

Nu we een Sessie object, laten we verder gaan en creëren MimeMessage en MimeBodyPart voorwerp. We gebruiken deze objecten om het e-mailbericht te maken:

Berichtbericht = nieuwe MimeMessage (sessie); message.setFrom (nieuw internetadres (van)); message.setRecipients (Message.RecipientType.TO, InternetAddress.parse (to)); message.setSubject ("Test-e-mailonderwerp"); BodyPart messageBodyPart = nieuwe MimeBodyPart (); messageBodyPart.setText ("Mail Body"); 

In het bovenstaande fragment hebben we het MimeMessage object met de vereiste details zoals van, naar en onderwerp. Dan hebben we een MimeBodyPart object met de hoofdtekst van de e-mail.

Nu moeten we een nieuwe maken MimeBodyPart om een ​​bijlage toe te voegen aan onze mail:

MimeBodyPart attachmentPart = nieuwe MimeBodyPart (); attachmentPart.attachFile (nieuw bestand ("C: \ Document1.txt")); 

We hebben er nu twee MimeBodyPart objecten voor één mailsessie. Dus we moeten er een maken MimeMultipart object en voeg vervolgens beide MimeBodyPart objecten erin:

Multipart multipart = nieuwe MimeMultipart (); multipart.addBodyPart (messageBodyPart); multipart.addBodyPart (attachmentPart); 

eindelijk, de MimeMultiPart wordt toegevoegd aan de MimeMessage object als onze e-mailinhoud en de Transport.send () methode wordt aangeroepen om het bericht te verzenden:

message.setContent (multipart); Transport.send (bericht); 

Samenvattend, de Bericht bevat MimeMultiPart die verder meerdere bevat MimeBodyPart (s). Zo stellen we de complete e-mail samen.

Bovendien kunt u om meerdere bijlagen te verzenden eenvoudig een andere toevoegen MimeBodyPart.

4. Conclusie

In deze zelfstudie hebben we geleerd hoe u e-mails met enkele en meerdere bijlagen in Java kunt verzenden.

Zoals altijd is de volledige broncode beschikbaar op GitHub.


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