Menerima e-mel dalam Java ialah kelas Store dan Folder yang digunakan bersama dengan kelas MimeMessage, Session dan Transport. Ia digunakan untuk menerima e-mel dan mempelajari peringkat penghantaran e-mel JavaMail API. Kelas ujian emailreceive akan membuat hubungan dengan pelayan e-mel berdekatan, dan mel akaun dan memaparkannya untuk menunjukkan alamat ip dalam fail konfigurasi hos untuk nama hos dan pop3 yang merupakan jenis protokol kedai mel pilihan.
Mulakan Kursus Pembangunan Perisian Percuma Anda
Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain
Untuk mengetahui tentang peringkat penghantaran e-mel API JavaMail, kelas ujian emailreceive akan membuat hubungan dengan pelayan e-mel berdekatan, menyambung ke e-mel akaun dan memaparkannya untuk menyerlahkan alamat IP dalam fail konfigurasi hos untuk nama hos dan pop3 ialah jenis protokol kedai mel pilihan.
Menerima e-mel dicapai menggunakan kelas Store dan Folder bersama dengan kelas MimeMessage, Session dan Transport. Program ini menerima mesej e-mel sebagai permintaan HTTP. Kita mesti mengaitkan alamat e-mel dengan servlet dalam persediaan aplikasi untuk memproses mesej e-mel masuk, dan kemudiannya kita mesti memasukkan kod servlet dalam apl web. Servis yang betul menerima permintaan HTTP daripada e-mel masuk untuk mengendalikan permintaan dan menghantar respons.
Kami telah memeriksa menggunakan Java Mail API untuk menghantar e-mel. Dengan hanya satu protokol (SMTP) untuk dipelajari, menghantar e-mel agak mudah. POP3 dan IMAP ialah dua protokol yang digunakan untuk penerimaan, walau bagaimanapun. Protokol POP3 yang lebih tradisional memberikan satu peti masuk dengan satu baris gilir mesej mel. Piawaian yang lebih terkini, IMAP, memaparkan mel sebagai entri dalam hierarki folder, salah satu daripadanya akan menjadi peti masuk.
Pelaksanaan Penyedia POP3 dan IMAP, serta rakan sejawatannya yang selamat, POP3S dan IMAPS, disertakan dengan Java Mail.
Kami mesti memuatkan dua fail balang berikut untuk menghantar e-mel menggunakan API JavaMail:
Kami boleh memasukkan pelaksanaan API JavaMail, yang benar-benar percuma dan sumber terbuka, ke dalam produk. Edisi ini juga akan ditampilkan dengan pembekal SMTP, POP3 dan IMAP. API Jakarta EE dipanggil Jakarta Mail yang digunakan terutamanya untuk menghantar dan menerima e-mel melalui protokol SMTP, POP3 dan IMAP. Platform Java EE termasuk versi terbina dalam Jakarta Mail, namun pengguna Java SE secara alternatif boleh menggunakan pakej tambahan. Dalam versi terbaharu yang dikeluarkan beberapa bulan lepas dan juga satu lagi pelaksanaan Java Mail sumber terbuka iaitu GNU JavaMail, hanya menyokong versi 1.3 spesifikasi JavaMail tetapi hanya menawarkan bahagian belakang NNTP percuma, membolehkan penggunaan teknologi ini untuk membaca dan menghantar artikel kumpulan berita.
Diberikan di bawah adalah contoh yang disebutkan:
Kod:
package TestNG; import java.io.IOException; import java.util.Properties; import javax.mail.Folder; import javax.mail.Message; import javax.mail.MessagingException; import javax.mail.NoSuchProviderException; import javax.mail.Session; import javax.mail.Store; import com.sun.mail.pop3.POP3Store; public class NewTest{ public static void receiveEmail(String hst, String stype, String user, String password) { try { Properties props = new Properties(); props.put("mail.store.protocol", "pop3"); props.put("mail.pop3s.host", hst); props.put("mail.pop3s.port", "995"); props.put("mail.pop3.starttls.enable", "true"); Session sess = Session.getDefaultInstance(props); Store st = sess.getStore("pop3s"); st.connect(hst, user, password); Folder emailFolder = st.getFolder("INBOX"); emailFolder.open(Folder.READ_ONLY); Message[] messages = emailFolder.getMessages(); for (int i = 0; i < messages.length; i++) { Message message = messages[i]; System.out.println("Welcome To Email"); System.out.println("Email Number " + (i + 1)); System.out.println("Subject: " + message.getSubject()); System.out.println("From: " + message.getFrom()[0]); System.out.println("Text: " + message.getContent().toString()); } emailFolder.close(false); st.close(); } catch (NoSuchProviderException e) {e.printStackTrace();} catch (MessagingException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} } public static void main(String[] args) { String host = "pop.gmail.com"; String stypes = "pop3"; String username= "[email protected]"; String password= "xodbizaoiqijifre"; receiveEmail(host, stypes, username, password); } }
Output:
Penjelasan:
Di bawah adalah Soalan Lazim yang dinyatakan:
Jawapan:
Menggunakan JavaMail API untuk mendapatkan atau menerima e-mel asas dengan protokol asas tidak mempunyai kaitan dengan lapisan ini sama sekali.
Jawapan:
Antara IMAP itu ialah protokol lanjutan untuk menerima mesej.
Jawapan:
Atur cara menerima mesej e-mel sebagai permintaan HTTP. Kita mesti mengaitkan alamat e-mel dengan servlet dalam persediaan aplikasi untuk memproses mesej e-mel masuk, kita harus memasukkan kod servlet dalam apl. Kemudian servlet yang betul menerima permintaan HTTP daripada e-mel masuk dan mengendalikannya.
Atas ialah kandungan terperinci Menerima E-mel dalam Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!