E-mailek küldése Java-val
1. Áttekintés
Ebben a gyors oktatóanyagban e-mailt küldünk csatolmányokkal és csatolmányokkal - az alapvető Java levéltár segítségével.
2. A projekt beállítása és a függőség
Ebben a cikkben egy egyszerű Maven-alapú projektet fogunk használni, amely függ a Java levelezési könyvtárától:
javax.mail mail 1.5.0-b01
A legújabb verzió itt található.
3. Sima szöveg és HTML e-mail küldése
Először konfigurálnunk kell a könyvtárat az e-mail szolgáltató hitelesítő adataival. Ezután létrehozunk egy Ülés ezt felhasználjuk az üzenet küldésre való felépítéséhez.
A konfiguráció Java-n keresztül történik Tulajdonságok tárgy:
Tulajdonságok prop = új Tulajdonságok (); prop.put ("mail.smtp.auth", igaz); 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");
A fenti tulajdonságkonfigurációban az e-mail állomást Mailtrap-ként konfiguráltuk, és használjuk a szolgáltatás által biztosított portot is.
Most lépjünk tovább, létrehozva egy munkamenetet a felhasználónevünkkel és jelszavunkkal:
Munkamenet = Session.getInstance (prop, new Authenticator () {@ Felülbírálás védett PasswordAuthentication getPasswordAuthentication () {return new PasswordAuthentication (felhasználónév, jelszó);}});
A felhasználónevet és jelszót a levelező szolgáltató adja meg a gazdagép és a port paraméterei mellett.
Most, hogy van egy levelünk Ülés objektumot, hozzunk létre egy PantomimÜzenet küldésére:
Üzenet = új MimeMessage (munkamenet); message.setFrom (új InternetAddress ("[e-mail védett]")); message.setRecipients (Message.RecipientType.TO, InternetAddress.parse ("[email védett]")); message.setSubject ("Mail Subject"); String msg = "Ez az első e-mailem a JavaMailer használatával"; MimeBodyPart mimeBodyPart = új MimeBodyPart (); mimeBodyPart.setContent (msg, "text / html"); Multipart multipart = new MimeMultipart (); multipart.addBodyPart (mimeBodyPart); message.setContent (többrészes); Transport.send (üzenet);
A fenti részletben először létrehoztunk egy üzenet a szükséges tulajdonságokkal - a, a és az alany felé. Ezt követi a mimeBodyPartamelynek kódolása szöveg / html, mivel üzenetünk HTML-stílusú.
A következő dolog az volt, hogy létrehoztunk egy példányt MimeMultipart objektum, amelyet felhasználhatunk a mimeBodyPart hoztunk létre.
Végül beállítottuk a többrészes tárgy, mint tartalmunk üzenet és használja a Küld()nak,-nek Szállítás objektum az e-mail küldéshez.
Tehát azt mondhatjuk, hogy a mimeBodyParttartalmazza a többrészes amit a üzenet. Ezért a többrészes többet is tartalmazhat mimeBodyPart.
Ez lesz a következő szakasz középpontjában.
4. E-mail küldése melléklettel
Ezután egy melléklet elküldéséhez csak egy másikat kell létrehoznunk MimeBodyPartés csatolja hozzá a fájl (oka) t:
MimeBodyPart attachmentBodyPart = új MimeBodyPart (); attachmentBodyPart.attachFile (új fájl ("elérési út / fájlhoz"));
Ezután hozzáadhatjuk az új testrészt a MimeMultipartkorábban létrehozott objektum:
multipart.addBodyPart (attachmentBodyPart);
Ennyit kell tennünk.
Még egyszer beállítottuk a többrészes például a üzenet objektumot, végül felhasználjuk a Küld() hogy végezze el a levél küldését.
5. Következtetés
Összegzésként elmondtuk, hogy láttuk, hogyan lehet a natív Java levelezési könyvtárat használni e-mailek küldéséhez akár csatolással is.
Mint mindig, a teljes forráskód elérhető a Githubon.