pratique quand on a rendu un tp en retard,
on fait croire au prof qu'on a envoyé son tp à temps
possibilité d'envoyer un certain nombre de mails (1-1000)
ainsi que de sauvegarder son mail pour le charger plus tard
le tout dans une interface conviviale
Source / Exemple :
import javax.mail.internet.*;
import javax.mail.*;
import java.util.*;
import java.io.*;
import java.text.*;
public class Mail
{
private final static String MAILER_VERSION = "x84b12ca4587afeed4";
private Vector tabServeur;
public Mail()
{
tabServeur = new Vector();
recupTabServeur();
}
public String sendMail(String serveur,
String pour,
String de,
String date,
String sujet,
int nb,
String mess)
{
String result = null;
try
{
//on regle les proprietes
Properties prop = System.getProperties();
prop.put("mail.smtp.host", serveur);
//on instancie une variable session
Session session = Session.getDefaultInstance(prop, null);
//on fabrique le message
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress(de));
InternetAddress address = new InternetAddress(pour);
message.setRecipient(Message.RecipientType.TO, address);
message.setSubject(sujet);
message.setText(mess);
message.setHeader("X-Mailer", MAILER_VERSION);
DateFormat df = DateFormat.getDateInstance();
Date dt = df.parse(date);
message.setSentDate(dt);
for(int i=0; i<nb; i++)
{
Transport.send(message);
}
if(nb == 1)
result = "Le Message a ete envoye avec succes";
else
result = "Les "+nb+" Messages ont ete envoyes avec succes";
}
catch(Exception e)
{
result = e.getMessage();
}
return result;
}
private void recupTabServeur()
{
String path = "servers.lig";
String ligne="";
try
{
BufferedReader buff = new BufferedReader(new FileReader(path));
while ((ligne = buff.readLine()) != null)
{
tabServeur.add(ligne);
}
buff.close();
}
catch(Exception e)
{
System.err.println(e.getMessage());
}
}
public Vector getTabServeur()
{
return tabServeur;
}
public void saveMessage(String pour,
String de,
String sujet,
String message,
File file)
{
PrintWriter writer;
try
{
writer = new PrintWriter(new BufferedWriter(new FileWriter(file)));
writer.println(pour);
writer.println(de);
writer.println(sujet);
writer.println(message);
writer.close();
}
catch(Exception e)
{
System.err.println(e.getMessage());
}
}
public HashMap loadMessage(File file)
{
String ligne="", message="";
HashMap mail = new HashMap();
try
{
BufferedReader buff = new BufferedReader(new FileReader(file));
mail.put("pour", buff.readLine());
mail.put("de", buff.readLine());
mail.put("sujet", buff.readLine());
while ((ligne = buff.readLine()) != null)
{
message += (ligne+"\n");
}
mail.put("message", message);
buff.close();
}
catch(Exception e)
{
System.err.println(e.getMessage());
}
return mail;
}
}
Conclusion :
à rajouter:
- attachement de fichiers
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.