Envoyer un mail

cs_salim81 Messages postés 78 Date d'inscription mardi 6 juin 2006 Statut Membre Dernière intervention 26 septembre 2007 - 22 nov. 2006 à 11:15
ch0upette Messages postés 25 Date d'inscription jeudi 2 novembre 2006 Statut Membre Dernière intervention 19 février 2008 - 24 nov. 2006 à 16:19
bonjour a tous;

j'ai trouver sur le net le programme ci-dessous qui me permet d'envoyer
un mail via le langage java.je cherche comment modifier se programme de
facon que je puisse recuperer le texte du message ainsi que l'adresse
du destinataire a partir d'une table ("mail") dans ma base de donnees
Mysql.cette table contient des champs:Id ,non distinataire,texteMail....

programme
import java.io.*;
import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;

public class Envoi {

/** Destinataire du message. */
protected String message_dest = ;
/* Objet du message. */
protected String message_objet = "Re: detail du sujet ";
/** Destinataire du message en copie (CC). */
protected String message_cc = "dbz_max@hotmail.com";
/** Texte du message. */
protected String message_corps =
"Bonjour dans une semaine vous recevrez de  " +
"plus amples détails sur " +
"le sujet de votre choix";

/** Objet session de JavaMail. */
protected Session session;
/** Objet message de JavaMail. */
protected Message mesg;

public void envoyerMail() {

// Nous devons passer les informations au serveur de messagerie sous
// forme de propriétés car JavaMail en comporte beaucoup...
Properties props = new Properties();

// Votre réseau doit donner au serveur SMTP local le nom "nom_du_serveur_smtp"

props.put("mail.smtp.host", "nom_du_serveur_smtp");

// Créer l’objet Session.
session = Session.getDefaultInstance(props, null);
session.setDebug(true); //activer le mode verbeux !

try {
// Créer un message.
mesg = new MimeMessage(session);

// Adresse From - Indiquer la provenance du message
mesg.setFrom(new InternetAddress("anonymous@service.domain"));

// Adresse TO.
InternetAddress toAddress = new InternetAddress(message_dest);
mesg.addRecipient(Message.RecipientType.TO, toAddress);

// Adresse CC.
InternetAddress ccAddress = new InternetAddress(message_cc);
mesg.addRecipient(Message.RecipientType.CC, ccAddress);

// Objet.
mesg.setSubject(message_objet);

// Corps du message.
mesg.setText(message_corps);

// Enfin, envoyer le message !
Transport.send(mesg);

} catch (MessagingException ex) {
while ((ex = (MessagingException)ex.getNextException()) != null) {
ex.printStackTrace();
}
}
}
/** Programme principal*/
public static void main(String[] av) {
Envoi env = new Envoi();
env.envoyerMail();
}
}


quelqu'un pourra me donner une indication?

merci.

1 réponse

ch0upette Messages postés 25 Date d'inscription jeudi 2 novembre 2006 Statut Membre Dernière intervention 19 février 2008
24 nov. 2006 à 16:19
Tout d'abord, il faut que tu crées une connexion à ta base de données. Puis tu récupère tes données dans un ResultSet.
A partir de là, tu affectes les champs du ResultSet dans tes variables message_dest et message_corps.
Tout ceci, tu peux le faire dans envoyerMail(), ou dans une autre fonction que tu appelleras dans ton main, avant envoterMail.
Si je ne suis pas assez précise, n'hésite pas à redemander.
Céline 
0
Rejoignez-nous