API Javamail - Envoi d'e-mails à l'aide de Java à partir de SMTP local

API Javamail - Envoi d'e-mails à l'aide de Java à partir de SMTP local

API Javamail soutient le javamail (javax.poster) Interface pour envoyer des e-mails. javax.Le courrier propose tous les cours requis pour envoyer des e-mails à d'autres protocoles de courrier comme SMTP, POP3 et IMAP.

Dans cet article, nous utilisons l'API Javamail pour envoyer des e-mails à l'aide du langage de programmation Java via le serveur SMTP local. Assurez-vous que vous exécutez SMTP Server sur LocalHost.

Étape 1: Configuration de l'environnement Javamail

Nous devons d'abord télécharger un fichier jar contenant toutes les classes de Javax.poster. Télécharger le pot (poster.pot) Fichier à partir du site officiel d'Oracle.

Définissez maintenant le chemin de classe dans l'environnement système. Les utilisateurs de Windows s'assurent que vous avez configuré la variable de chemin pour votre installation Java.

Les fenêtres:

C:> Set ClassPath = Mail.pot;.; 

Linux:

# Exporter java_home = / opt / jdk1.8.0_05 / # Export Path = $ path: $ java_home / bin # export classpath = $ java_home / jre / lib / ext: $ java_home / lib / outils.pot: courrier.pot:. 

Étape 2: Écrivez un programme Java pour envoyer un e-mail

Créer un fichier Java Sendmailjavaapi.Java avec le contenu suivant. Dans ce script, vous devez modifier le courrier électronique vers et en provenance de variables selon vos exigences.

Importer Java.user.Propriétés; Importer Javax.poster.Message; Importer Javax.poster.MessageingException; Importer Javax.poster.Session; Importer Javax.poster.Transport; Importer Javax.poster.l'Internet.AddressException; Importer Javax.poster.l'Internet.Adresse Internet; Importer Javax.poster.l'Internet.MimeMessage; classe publique sendmailjavaapi public static void main (String [] args) lève une exception chaîne à = "destinataire @ exemple.com "; chaîne de =" Sender @ Exemple.com "; Properties props = new Properties (); Session Session = Session.getDefaultInstance (accessoires, null); String msgbody = "Envoi d'e-mails à l'aide de l'API Javamail…"; essayez message msg = new mimeMessage (session); msg.setFrom (new InternetAddress (de, "noreply")); msg.Addécipient (message.Récipiendaire.À, nouveau InternetAddress (à, "M. Receveur ")); msg.setSubject ("Bienvenue à Java Mail API"); msg.setText (msgbody); Transport.envoyer (msg); Système.dehors.println ("e-mail envoyé avec succès…"); catch (AddressException e) lancer une nouvelle RuntimeException (e); Catch (MessagedException e) Throw New RuntimeException (e);
123456789101112131415161718192021222324252627282930313233435363738Importer Java.user.Propriétés; importer javax.poster.Message; Importer Javax.poster.MessageingException; Importer Javax.poster.Session; Importer Javax.poster.Transport; Importer Javax.poster.l'Internet.AddressException; Importer Javax.poster.l'Internet.InternetAddress; Importer Javax.poster.l'Internet.MimeMessage; classe publique sendmailjavaapi public static void main (String [] args) lève une exception chaîne à = "destinataire @ exemple.com "; chaîne de =" Sender @ Exemple.com "; Properties props = new Properties (); Session Session = Session.getDefaultInstance (accessoires, null); Chaîne msgbody = "Envoi de courrier électronique à l'aide de l'API Javamail..."; essayez message msg = new mimeMessage (session); msg.setFrom (new InternetAddress (de, "noreply")); msg.Addécipient (message.Récipiendaire.À, nouveau InternetAddress (à, "M. Receveur ")); msg.setSubject ("Bienvenue à Java Mail API"); msg.setText (msgbody); Transport.envoyer (msg); Système.dehors.println ("e-mail envoyé avec succès..."); catch (AddressException e) Throw New RuntimeException (E); Catch (MessageSingException E) Throw New RuntimeException (E);

Étape 3: Exécutez le programme pour envoyer un e-mail

Enfin, nous devons exécuter le programme Java pour envoyer un e-mail. Comme nous savons que cela se produit dans deux STPES, d'abord pour compiler le programme et le deuxième pour l'exécuter.

# javac sendmailjavaapi.java # java sendmailjavaapi