Die Javamail -API definiert eine Java.Mail.Transport -Klasse, die speziell zur Ausführung von E -Mail -Sendungsaufgaben verwendet wird. Das Instanzobjekt dieser Klasse umfasst die zugrunde liegenden Implementierungsdetails eines bestimmten E -Mail -Sendenprotokolls. Die Anwendung ruft die Methoden in dieser Klasse auf, um die eingekapselten E -Mail -Daten im Nachrichtenobjekt an den angegebenen SMTP -Server zu senden. Die Arbeitsbeziehung zwischen den Haupt -APIs, die zum Senden von E -Mails mit Javamail geschickt wurden, lautet wie folgt:
1. Erhalten Sie ein Transportobjekt, das ein bestimmtes E -Mail -Sendenprotokoll aus dem Sitzungsobjekt implementiert.
2. Verwenden Sie das Sitzungsobjekt, um ein Nachrichtenobjekt zu erstellen und die Nachrichtenobjektmethode aufzurufen, um die E -Mail -Daten zu inkapseln.
A. Schließen Sie eine Verbindung zum angegebenen SMTP -Server her und rufen Sie die E -Mail -Senden -Methode im Transportobjekt an, um die E -Mail -Daten im Nachrichtenobjekt zu verkapulieren.
Im zweiten Artikel über das Erstellen von E -Mails in Javamail haben wir gelernt, E -Mails zu erstellen, aber zu dieser Zeit haben wir die E -Mails auf unsere lokale Festplatte geschrieben. Als nächstes verwendeten wir die von der Javamail -API bereitgestellte Transportklasse, um E -Mails zu senden.
Import Java.util.date; Import Java.util.Properties; Import Javax.mail.Message; Import Javax.mail.Session; löst Ausnahme {String von = "[email protected]"; String to = "[email protected]"; String Subjekt = "test"; String body = "test !!!"; String SMTPHOST = "SMTP.qq.com"; Eigenschaften props = neue Eigenschaften (); props.setProperty ("mail.transport.protocol", "SMTP"); // Protokoll verwendet (nach Javamail -Spezifikation erforderlich) props.setProperty ("mail.smtp.host", SMTPhost); // Die SMTP -Serveradresse des Postfachs des Absenders lautet props.setProperty ("mail.smtp.auth", "true"); // Die Authentifizierung anfordern, der Parameterame bezieht sich auf die spezifische Implementierung // Session -Instance -Objekt Session Session = Session.getDefaultInstance (Props); // Mimemessage -Instanzobjekt MIMEMESSAGE Message = new mimemessage (Sitzung) erstellen; // setze sender message // Empfängermeldung einstellen.setRecipients (Message.RecipientType.to, InternetAddress.Parse (to)); // Senden Sie Datum meldung ein. SetSentDate (neues Datum ()); // E -Mail -Betreff Meldung festlegen. // Setzen Sie die E -Mail -Körpermeldung.setText (Körper); // Klartext -Inhaltsnachricht festlegen. SetText (Körper); // Speichern und generieren Sie die endgültige E -Mail -Inhaltsnachricht. // Auf den Debug -Modus einstellen, können Sie die detaillierte Sendeprotokollsitzung anzeigen. // den Transport Object Transport transport = session.getTransport ("SMTP"); // Der zweite Parameter muss im SMTP -Autorisierungscode des QQ -Mailbox ausgefüllt werden. Was ist der Autorisierungscode und wie wird er festgelegt? Transport.Connect (von, "****************"); // Senden, message.getAllrecipients () sendet alle Empfänger hinzu, das beim Erstellen des E -Mail -Objekts, des CC und der Senden von Meldungen (Message, message.getAllrecipients ()) hinzugefügt wird. Transport.close (); }}Hinweis: Der SMTP -Dienst muss für das E -Mail -Konto aktiviert sein.
Das Senden komplexer Mailcodes mit eingebetteten Ressourcen oder Anhängen ähnelt denen im zweiten Artikel in Javamail, um E-Mails zu erstellen, mit der Ausnahme, dass die Schritte zum Schreiben auf die Festplatte durch Zeilen 42-47 im obigen Code ersetzt werden.
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.