Javamail API - Menghantar E -mel Menggunakan Java dari SMTP Tempatan

Javamail API - Menghantar E -mel Menggunakan Java dari SMTP Tempatan

API Javamail Menyokong Javamail (Javax.mel) antara muka untuk menghantar mesej e -mel. Javax.Mail mempunyai semua kelas yang diperlukan untuk menghantar e -mel protokol mel lain seperti SMTP, POP3, dan IMAP.

Dalam artikel ini kami menggunakan API Javamail untuk menghantar e -mel menggunakan bahasa pengaturcaraan Java melalui pelayan SMTP tempatan. Pastikan anda menjalankan pelayan SMTP di localhost.

Langkah 1: Persediaan Persekitaran Javamail

Mula -mula kita perlu memuat turun fail balang yang mengandungi semua kelas di javax.mel. Muat turun balang (mel.balang) fail dari laman web rasmi Oracle.

Sekarang tetapkan kelas dalam persekitaran sistem. Pengguna Windows pastikan anda telah mengkonfigurasi pembolehubah laluan untuk pemasangan Java anda.

Windows:

c:> tetapkan classpath = mel.balang;.; 

Linux:

# Eksport java_home =/opt/jdk1.8.0_05/ # Path Export = $ Path: $ java_home/bin # Export classpath = $ java_home/jre/lib/ext: $ java_home/lib/alat.JAR: Mel.balang:. 

Langkah 2: Tulis program Java untuk menghantar e -mel

Buat fail Java Sendmailjavaapi.Java dengan kandungan berikut. Dalam skrip ini, anda perlu menukar e -mel ke dan dari pembolehubah mengikut keperluan anda.

Import Java.util.Sifat; Import Javax.mel.Mesej; Import Javax.mel.MessagingException; Import Javax.mel.Sesi; Import Javax.mel.Pengangkutan; Import Javax.mel.Internet.AlamatException; Import Javax.mel.Internet.InternetAddress; Import Javax.mel.Internet.Mimemessage; kelas awam Sendmailjavaapi public static void main (string [] args) melemparkan pengecualian string to = "[email protected] "; string dari =" [email protected] "; props properties = sifat baru (); sesi sesi = sesi.getDefaultInstance (props, null); String msgbody = "Menghantar e -mel menggunakan Javamail API ..."; cuba mesej msg = mimeMessage baru (sesi); msg.setfrom (InternetAddress baru (dari, "noreply")); msg.addRecipient (mesej.Penerima.Kepada, InternetAddress baru (kepada, "Encik. Penerima ")); msg.setSubject ("Selamat datang ke Java Mail API"); msg.setText (msgbody); Pengangkutan.hantar (msg); Sistem.keluar.println ("E -mel dihantar dengan jayanya ..."); tangkapan (alamatException e) membuang runtimeException baru (e); menangkap (MessagingException e) membuang runtimeException baru (e);
1234567891011121314151617181920212222242526272829303132333435363738Import Java.util.Sifat; import javax.mel.Mesej; import javax.mel.MessagingException; import javax.mel.Sesi; import javax.mel.Pengangkutan; import javax.mel.Internet.AlamatException; Import Javax.mel.Internet.Internetaddress; import javax.mel.Internet.Mimemessage; kelas awam Sendmailjavaapi public static void main (string [] args) melemparkan pengecualian string to = "[email protected] "; string dari =" [email protected] "; props properties = sifat baru (); sesi sesi = sesi.getDefaultInstance (props, null); String msgbody = "Menghantar E -mel Menggunakan Javamail API..."; cuba mesej msg = mimeMessage baru (sesi); msg.setfrom (InternetAddress baru (dari, "noreply")); msg.addRecipient (mesej.Penerima.Kepada, InternetAddress baru (kepada, "Encik. Penerima ")); msg.setSubject ("Selamat datang ke Java Mail API"); msg.setText (msgbody); Pengangkutan.hantar (msg); Sistem.keluar.println ("E -mel berjaya dihantar..."); tangkapan (alamatException e) membuang runtimeException baru (e); menangkap (MessagingException e) membuang runtimeException baru (e);

Langkah 3: Laksanakan program untuk menghantar e -mel

Akhirnya kita perlu melaksanakan program Java untuk menghantar e -mel. Seperti yang kita tahu bahawa ini berlaku dalam dua STPE, pertama untuk menyusun program dan kedua untuk menjalankannya.

# Javac Sendmailjavaapi.java # java sendmailjavaapi