Télécharger directement le code source:
1. Informations de base des e-mails (il est défini directement sur statique si cela est pratique)
Il vaut mieux être un Javabean
package com.lgf.email; Importer java.util.date; classe publique EmailMessage {/ ** * Les informations par e-mail peuvent être définies par vous-même. * Pour plus de commodité, il est directement défini sur statique * / // la chaîne statique publique du destinataire sur = "[email protected]"; // Sender envoie un e-mail à chaîne statique publique de = "[email protected]"; chaîne statique publique de_name = "xxx"; // cc public static String cc = "[email protected]"; // Secret Envoi public statique String BCC = "[email protected]"; // Type de courriel public Static String Email_Content = "Text / PLAIN"; // Email Title public static String email_subject = "Tester Email avec javamail"; // En-tête de courriel public statique String e-mail_header = "This Is Email Header"; // Content public static String email_body = "<a href = /" http://www.baidu.com/ "> Ceci est un corps de messagerie </a>"; // Server, par exemple, QQ, peut être défini sur smtp.qq.com String statique publique Email_host = "smtp.xxx.com"; // Envoi de la date statique publique SendDate = new Date (); // est-il nécessaire de vérifier le nom d'utilisateur et le mot de passe public booléen statique valide = true; } 2. Vérification du serveur (c'est-à-dire le nom d'utilisateur et le mot de passe lors de la connexion)
package com.lgf.email; import javax.mail.authenticator; Importer javax.mail.passwordAuthentication; / ** * Vérification du nom d'utilisateur et du mot de passe * @author lgf * * / classe publique MailAuthenticator étend Authenticator {private String username = "xxxxx"; chaîne privée mot de passe = "xxxxx"; MailAuthenticator public () {super (); } / ** * Définissez le nom d'utilisateur et le mot de passe authentifié * / MailAuthenticatrice publique (Nom d'utilisateur de chaîne, Mot de passe de chaîne) {Super (); this.userName = nom d'utilisateur; this.password = mot de passe; } Protected PasswordAuthentication GetPasswordAuthentication () {return new PasswordAuthentication (this.userName, this.password); }} 3. Configurer des informations et des étapes avant d'envoyer des e-mails
package com.lgf.email; import java.util.properties; import javax.activation.datahandler; import javax.activation.datasource; Importer Javax.Activation.FileDataSource; import javax.mail.address; import javax.mail.authenticator; Importer javax.mail.bodyPart; import javax.mail.mesage; Importer javax.mail.multupart; Importer Javax.mail.Session; Importer javax.mail.transport; Importer javax.mail.internet.internetAddress; Importer javax.mail.internet.mimeBodyPart; Importer javax.mail.internet.mimeMessage; Importer javax.mail.internet.mimemultupartit; import com.lgf.sendemail.mailAuthenticator; classe publique SendEmail {/ ** * Envoyer un courrier normal * @throws exception * / public void dosendNormalmail () {// Obtenez les propriétés de l'environnement système prop = new Properties (); Authenticator auth = null; // Déterminez si vous devez vérifier si (emailMessage.validate) {// le nom d'utilisateur d'authentification du serveur de messagerie et le mot de passe auth = new MailAuthenticator (); } // Ajouter des informations nécessaires Prop.put ("mail.smtp.host", emailMessage.email_host); Prop.put ("mail.smtp.auth", "true"); // Définissez la conversation et le serveur de messagerie pour la session de communication Session = session.getDefaultInstance (Prop, Auth); // Affichez les informations de débogage sur la console Session.setDebug (true); // Définissez le message du message d'objet Mail = new MimeMessage (session); Essayez {// Définissez le message Email Sujet.SetSubject (EmailMessage.email_Subject); // Définissez le titre de messagerie Message.sethEader ("En-tête", emailMessage.email_Header); // Définissez le message d'heure d'envoi.SesentDate (emailMessage.SendDate); // Définissez l'adresse de l'expéditeur et l'adresse d'adresse du nom = new InternetAddress (emailMessage.from, emailMessage.from_name); // ajouter des informations de l'expéditeur au message.setFrom (adresse); // Définissez l'adresse de l'expéditeur Toaddress = new InternetAddress (emailMessage.to); // Définissez l'adresse du destinataire Message.SetReccipient (message.recipentType.to, Toaddress); // Définissez plusieurs adresses de destinataire // message.AdDrecicipient (message.recipentType.to, nouveau InternetAddress ("[email protected]")); // Définissez le format de messagerie Message.SetContent ("Contenu", EmailMessage.email_Content); // Définir le contenu des e-mails doit être message.setText (emailMessage.email_body); // Définissez le contenu du message après le format de fichier Message.SeTText (emailMessage.email_Body); // Enregistrer les informations ajoutées ci-dessus Message.SaveChanges (); // Envoyer un mail System.out.println ("SendNormaleMail () Démarrer l'envoi d'e-mails ..."); Transport.send (message); System.out.println ("Envoyer avec succès!"); } catch (exception e) {System.out.println ("erreur"); e.printStackTrace (); }} / ** * Envoyer un courrier formaté html * / public void dosendhtmlmail () {// Obtenez les propriétés de l'environnement système prop = new Properties (); Authenticator auth = null; if (emailMessage.validate) {// Mail Server Authentication Name et mot de passe AUTH = new MailAuthenticator (); } // Ajouter des informations nécessaires Prop.put ("mail.smtp.host", emailMessage.email_host); Prop.put ("mail.smtp.auth", "true"); // Configurer des conversations et des serveurs de messagerie pour la session de communication Session Session = session.getDefaultInstance (Prop, Auth); // set Message Message d'objet Message = new MimeMessage (session); Essayez {// Définissez le message Email Sujet.SetSubject (EmailMessage.email_Subject); // Définissez le titre de messagerie Message.sethEader ("En-tête", emailMessage.email_Header); // Définissez le message d'heure d'envoi.SesentDate (emailMessage.SendDate); // Définissez l'adresse de l'expéditeur et l'adresse d'adresse du nom = new InternetAddress (emailMessage.from, emailMessage.from_name); // ajouter des informations de l'expéditeur à message.setFrom (adresse); // Définissez l'adresse de l'expéditeur Toaddress = new InternetAddress (emailMessage.to); // Définissez l'adresse du destinataire Message.SetReccipient (message.recipentType.to, Toaddress); // Définissez plusieurs adresses de destinataire // message.AdDrecicipient (message.recipentType.to, nouveau InternetAddress ("[email protected]")); // Définissez le contenu du message d'envoi comme Envoi HMML // Définissez le format de messagerie EmailMessage.email_Content = "Text / HTML; charset = UTF-8"; message.setContent (emailMessage.email_Body, emailMessage.email_content); // Enregistrer les informations ajoutées ci-dessus Message.SaveChanges (); // Envoyer un mail System.out.println ("DosendHtmlmail () Commencez à envoyer un e-mail ..."); Transport.send (message); System.out.println ("Envoyer avec succès!"); } catch (exception e) {System.out.println ("erreur"); e.printStackTrace (); }} / ** * Envoyer le courrier avec le format de pièce jointe * / public void dosendAttachmentMail () {// Obtenez les propriétés de l'environnement système prop = new Properties (); Authenticator auth = null; if (emailMessage.validate) {// Mail Server Authentication Name et mot de passe AUTH = new MailAuthenticator (); } // Ajouter des informations nécessaires Prop.put ("mail.smtp.host", emailMessage.email_host); Prop.put ("mail.smtp.auth", "true"); // Configurer des conversations et des serveurs de messagerie pour la session de communication Session Session = session.getDefaultInstance (Prop, Auth); // set Message Message d'objet Message = new MimeMessage (session); Essayez {// Définissez le message Email Sujet.SetSubject (EmailMessage.email_Subject); // Définissez le titre de messagerie Message.sethEader ("En-tête", emailMessage.email_Header); // Définissez le message d'heure d'envoi.SesentDate (emailMessage.SendDate); // Définissez l'adresse de l'expéditeur et l'adresse d'adresse du nom = new InternetAddress (emailMessage.from, emailMessage.from_name); // ajouter des informations de l'expéditeur à message.setFrom (adresse); // Définissez l'adresse de l'expéditeur Toaddress = new InternetAddress (emailMessage.to); // Définissez l'adresse du destinataire Message.SetReccipient (message.recipentType.to, Toaddress); // Définissez plusieurs adresses de destinataire // message.AdDrecicipient (message.recipentType.to, nouveau InternetAddress ("[email protected]")); // Définissez le contenu du message d'envoi ci-dessous est le message d'envoi de pièce jointe.setContent (emailMessage.email_Body, emailMessage.email_content); BodyPart MessageBodyPart = new MIMEBODYPART (); MessageBodyPart.seTText ("BodyPart"); Multipart multipart = new mimeMultuplart (); multipart.addbodyPart (messageBodyPart); MessageBodyPart = new MIMEBODYPART (); // configure la ressource téléchargée dataSource source = new FileDataSource ("e: //3.doc"); // Ajouter à MessageBodyPart.SetDatahandler (nouveau Datahandler (source)); // Définissez le nom du fichier, n'oubliez pas le nom de suffixe messagesbodyPart.setFileName ("test.doc"); multipart.addbodyPart (messageBodyPart); Message.SetContent (multipart); // Enregistrer les informations ajoutées ci-dessus Message.SaveChanges (); // Envoyer un mail System.out.println ("DosendAttachmentMail () Commencez à envoyer un e-mail ..."); Transport.send (message); System.out.println ("SendSuccessly!"); } catch (exception e) {System.out.println ("erreur"); e.printStackTrace (); }} / ** * @param args * / public static void main (String [] args) {// new SendEmail (). DosendNormalmail (); // new SendEmail (). DosendHtmlmail (); new SendEmail (). DosendAttachmentMail (); }}Ce qui précède est le code détaillé pour Java Envoi de courrier javax.mail. J'espère qu'il sera utile à tout le monde de mettre en œuvre un e-mail Java.