JavaMail et POP3: Lire les messages des boîtes de réception de Gmail et de Yahoo

Author:

 html, email, Connexion, javaMail, session, JavaMail, java, connexion
Download

import java.util.Properties;
 
import javax.mail.Authenticator;
import javax.mail.Folder;
import javax.mail.Message;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Store;
 
/**
 * Copyright: 
 * @ autheur Sako Adama
 * adama********@gmail.com
 *
 * Ce programme Ouvre deux connexions
 * Une sur Gmail et l'autre sur Yahoo
 * ensuite il lit les messages des
 * boîtes de réception de deux connexions.
 *
 * Pour configurer vos comptes Gmail et Yahoo afin d'utiliser ce programme.
 * visitez ces liens:
 * http://mail.google.com/support/bin/answer.py?answer=13273
 * http://support.google.com/mail/bin/answer.py?hl=en&answer=13287
 * http://help.yahoo.com/l/ca/yahoo/mail/yahoomail/mailplus/pop/pop-14.html
 **/
 
public class Java_Email {
 
 private static void LireMessage(final String host, final String username, final String password)
 	throws  Exception
 {
 
    // Définir les paramètres de connexion
 	Session session = Session.getDefaultInstance(new Properties(),
 	    	 new Authenticator()
    	 {
    	 	  public PasswordAuthentication getPasswordAuthentication()
    	 	  	     {
                  return new PasswordAuthentication(username, password);
                     }
    	 }
    	 	);
    Store store = session.getStore("pop3");
 
    // Ouvrir la connexion
     store.connect(host,username, password);
 
 	 System.out.println ("Vous ête connecté à "+host);
 
 	// Ouverture de la boîte de réception
 
 	 Folder inbox = store.getFolder("INBOX");
    if (inbox == null) {
      System.out.println("Boîte de Réception introuvale");
      System.exit(1);
    }
    inbox.open(Folder.READ_ONLY);
 
    // Sélectionner tous les messages du répertoire ouvert
    Message[] messages = inbox.getMessages();
 
    // Afficher le nombre de message
    System.out.println ("Vous avez: "+messages.length+" message(s)");
 
    System.out.println ("Voici le contenu d'un message:");
    System.out.println ();
 
    // Afficher le contenu d'un message
    if(messages.length>=1)
    	messages[1].writeTo(System.out);
 
 	 store.close();
 
 }
  public static void main(String[] args) throws Exception
  {
  	 // Exemple de Gmail
     Java_Email.LireMessage("pop.gmail.com","username","test***pase");
 
     // Exemple de Yahoo
     Java_Email.LireMessage("pop.mail.yahoo.ca","username","test***pase");
 
  }
}