Die Beispiele in diesem Artikel teilen den spezifischen Implementierungscode des E -Mail -Senden- und Empfangsfunktion für Ihre Referenz. Der spezifische Inhalt ist wie folgt
Vorbereitungsarbeiten, Umweltkonstruktion:
1. Erstellen Sie einen Mailserver lokal
EasyMail Server, EyouMailServerSetup.exe
2. Erstellen Sie ein neues E -Mail -Konto
Zhang San schickte eine E -Mail an Li Si.
Schritt 1:
Erstellen Sie einen neuen Domänennamen: Tools, Servereinstellungen, geben Sie iTcast.com in das Feld "einzelner Domänenname" ein
Schritt 2:
Erstellen Sie ein neues E -Mail -Konto: [email protected]
[email protected]
3. Installieren Sie Foxmail
Konfigurieren Sie den E -Mail -Sendeserver (SMTP): localhost 25
E -Mail -Empfangserver (POP3): Localhost 110
Erstellen Sie ein neues Konto und Sie können E -Mails erhalten!
Beachten
Wenn es sich um ein Webprojekt handelt, da Javaee mit E -Mail -Funktion ausgestattet ist, kann es Probleme geben!
Wir müssen unsere eigene Funktion für mail.jar -Datei verwenden! Sie müssen das Mail -Paket in Javaee löschen!
verwenden:
Für die Javamail -Entwicklung stellen Sie zunächst JAR -Dateien vor:
Activation.jar [Wenn Sie jdk1.6 oder höher verwenden, können Sie diese JAR -Datei nicht verwenden.
Mail.jar [E -Mail -Senden von Kernpaket]
/** * 1. Senden Sie eine normale E -Mail * @Author jie.yuan * */public class app_sendmail {@test public void testsend () löst eine Ausnahme aus {// 0. Mail -Parameter Eigenschaften prop = neue Eigenschaften (); prop.put ("mail.transport.protocol", "SMTP"); // Geben Sie den Protokoll Prop.put ("mail.smtp.host", "localhost") an; // host stmp.qq.com prop.put ("mail.smtp.port", 25); // port prop.put ("mail.smtp.auth", "true"); // Benutzerkennwortauthentifizierung prop.put ("mail.debug", "true"); // Debug -Modus // 1. Erstellen Sie eine Sitzung der E -Mail -Sitzung = Sitzung.getDefaultInstance (Prop); // 2. Erstellen Sie ein Mail -Körperobjekt (ganzes E -Mail -Objekt) mimemessage message = new Mimemessage (Sitzung); // 3. Setzen Sie die E -Mail -Körper -Parameter: //3.1 Title Message.setsubject ("Meine erste E -Mail"); //3.2 Mailssende zeitliche Nachricht. SetSentDate (neues Datum ()); //3.3 Sender message.setsender (neuer Internetaddress ("[email protected]"); //3.4 Empfänger message.setRecipient (recicentType.to, New InternetAddress ("[email protected]")); //3.5 Content Message.setText ("Hallo, es wurde erfolgreich gesendet! Text ...."); // einfache Klartext -E -Mail -Nachricht.Savechanges (); // E -Mail speichern (optional) // 4. Senden transport trans = session.getTransport (); trans.connect ("Zhangsan", "888"); // E -Mail senden trans.sendMessage (message, message.getallrecipients ()); trans.close (); }}Mit Bildern
/** * E -Mail mit Bildressourcen * @author jie.yuan * */public class app_2sendWithimg {// Initialisierungsparameter private statische Eigenschaften Prop; // Absender Private statische Internetaddress Sendman = NULL; static {prop = neue Eigenschaften (); prop.put ("mail.transport.protocol", "SMTP"); // Geben Sie den Protokoll Prop.put ("mail.smtp.host", "localhost") an; // host stmp.qq.com prop.put ("mail.smtp.port", 25); // port prop.put ("mail.smtp.auth", "true"); // Benutzerkennwortauthentifizierung prop.put ("mail.debug", "true"); // Debug -Modus try {sendman = new InternetAddress ("[email protected]"); } catch (adressException e) {neue runTimeexception (e) werfen; }} @Test public void testsend () löst eine Ausnahme aus {// 1. Erstellen Sie eine Mail Sitzung Sitzung = Sitzung.getDefaultInstance (prop); // 2. Erstellen eines Mail -Objekts Mimemessage Message = new Mimemessage (Sitzung); // 3.. message.setsender (sendman); Message.setRecipient (recurtesitType.to, New InternetAddress ("[email protected]")); Message.SetSentDate (neues Datum ()); / ************************ Setzen Sie E-Mail-Inhalt: Multi-Funktions-Benutzer-E-Mail (verwandt) ********************/ // 4.1 Erstellen Sie einen Multi-Funktion-Mailblock Mimemultipart verwandt = new mimemultiPart ("verwandt"); // 4.2 Erstellen Sie den Multi-Funktion-Mail-Block content = Text auf der linken + Bildressource auf dem rechten Mimebodypart-Inhalt = neu mimebodypart (); Mimebodypart ressource = neu mimebodypart (); // spezifische Inhalte festlegen: a. Ressourcen (Bild) String filepath = app_2sendwithimg.class.getResource ("8.jpg"). GetPath (); DataSource ds = new farredataSource (neue Datei (Filepath)); Datahandler Handler = New Datahandler (DS); Ressource.SetDatahandler (Handler); Resource.SetContentID ("8.JPG"); // Legen Sie den Ressourcennamen fest und verweisen Sie auf den fremden Schlüssel // den spezifischen Inhalt festlegen: b. Text content verwandt.addbodypart (Inhalt); verwandt.addbodypart (Ressource); /*********4.3 Add the built complex emails to the emails *******/ message.setContent(related); // 5. Transport trans = session.getTransport (); trans.connect ("Zhangsan", "888"); trans.sendMessage (message, message.getAllrecipients ()); trans.close (); }}Bilder + Anhänge
/** * 3. E -Mail mit Bildressourcen und Anhängen * @Author jie.yuan * */public class app_3imgandatta {// Initialisierungsparameter private statische Eigenschaften Prop; // Absender Private statische Internetaddress Sendman = NULL; static {prop = neue Eigenschaften (); prop.put ("mail.transport.protocol", "SMTP"); // Geben Sie den Protokoll Prop.put ("mail.smtp.host", "localhost") an; // host stmp.qq.com prop.put ("mail.smtp.port", 25); // port prop.put ("mail.smtp.auth", "true"); // Benutzerkennwortauthentifizierung prop.put ("mail.debug", "true"); // Debug -Modus try {sendman = new InternetAddress ("[email protected]"); } catch (adressException e) {neue runTimeexception (e) werfen; }} @Test public void testsend () löst eine Ausnahme aus {// 1. Erstellen Sie eine Mail Sitzung Sitzung = Sitzung.getDefaultInstance (prop); // 2. Erstellen eines Mail -Objekts Mimemessage Message = new Mimemessage (Sitzung); // 3.. message.setsender (sendman); Message.setRecipient (recurtesitType.to, New InternetAddress ("[email protected]")); Message.SetSentDate (neues Datum ()); /** E -Mail -Entwicklung mit Anhang (Bild)*/ // Einen E -Mail -Block -Mimemultipart gemischt = neuer Mimemultipart ("gemischt"); // -> Gesamtpost ist schnell, auf message.setContent (gemischt) gesetzt; // links: (Text + Bildressource) mimebodypart links = new mimebodypart (); // rechts: Anhang mimebodypart rechts = new mimebodypart (); // auf Total Mail Block gemischt.addbodypart (links); mixed.addbodypart (rechts); / ******* Bindung **********/ String attr_path = this.getClass (). GetResource ("a.docx"). GetPath (); DataSource attr_ds = new farrEedataSource (neue Datei (attr_path)); Datahandler attr_handler = new Datahandler (attr_ds); rechts.setDatahandler (attr_handler); Right.SetFileName ("a.docx"); / ************************ Setzen Sie E -Mail -Inhalt: Multifunktions -Benutzer -E -Mail (verwandt) ********************/ // 4.1 Erstellen Sie einen multifunktionalen E -Mail -Block mimemultipart verwandt = new mimemultiPart ("verwandt"); // ---> nach links eingestellt.SetContent (verwandt); // 4.2 Erstellen Sie den multifunktionalen Mail-Block-Inhalt = Text auf der linken + Bildressource auf dem rechten Mimebodypart-Inhalt = new mimebodypart (); Mimebodypart ressource = neu mimebodypart (); // spezifische Inhalte festlegen: a. Ressourcen (Bild) String filepath = app_3imgandatta.class.getResource ("8.jpg"). GetPath (); DataSource ds = new farredataSource (neue Datei (Filepath)); Datahandler Handler = New Datahandler (DS); Ressource.SetDatahandler (Handler); Resource.SetContentID ("8.JPG"); // Legen Sie den Ressourcennamen fest und verweisen Sie auf den fremden Schlüssel // den spezifischen Inhalt festlegen: b. Text content verwandt.addbodypart (Inhalt); verwandt.addbodypart (Ressource); // 5. sendTransport trans = session.getTransport (); trans.connect ("Zhangsan", "888"); trans.sendMessage (message, message.getAllrecipients ()); trans.close (); }}Das obige dreht sich alles um diesen Artikel. Ich hoffe, dass es für alle hilfreich sein wird, Java -Programme zu lernen.