Saat ini, email memainkan peran yang semakin penting dalam kehidupan kita, dan masing -masing dari kita akan menghadapinya (setidaknya dari waktu ke waktu kita menerima spam yang tidak dapat dijelaskan). Di tempat kerja, menggunakan email untuk berkomunikasi dapat membuat pekerjaan kami dapat dilacak dan lebih formal. Ini dioperasikan secara manual oleh kami. Dalam kehidupan, setelah mendaftarkan akun di situs web, situs web akan secara otomatis mengirim email selamat datang dan meminta kami untuk mengonfirmasi apakah akan mendaftar untuk mencegah pendaftaran berbahaya. Tentu saja, ini tidak mungkin untuk mengoperasikannya secara manual seperti kita bekerja. Javamail dalam 13 Teknologi Inti Java memberi kami API untuk beroperasi terkait dengan email.
1. Server Mail
Untuk memberikan fungsi email di Internet, server email khusus harus tersedia. Sejumlah besar server email diatur di internet. Misalnya, situs web seperti Sina.com, QQ.com, 163.com menyediakan server email gratis untuk umum, dan banyak perusahaan juga menyediakan server email untuk karyawan internal, yang dapat mengirim dan menerima email dari satu sama lain. Jadi apa fungsi server email? Ini dapat membantu kami mengirim email, menerima email, dan memberi kami layanan penjemputan surat. Ini mirip dengan kantor pos dalam kehidupan nyata. Ini tidak hanya dapat menerima email, tetapi juga menyediakan layanan bagi kami untuk mengambil email, dan juga membantu kami mengirim email. Gambar -gambar berikut dengan jelas menggambarkan fungsi server surat
(1) menerima surat yang dikirimkan oleh pengguna;
(2) meneruskan email yang dikirim oleh pengguna ke server email target;
(3) menerima email yang diteruskan oleh server surat lain dan menyimpan email di kotak surat pengguna yang mereka kelola;
(4) Berikan layanan bacaan kepada pengguna yang datang untuk membaca email.
Server email dapat dibagi menjadi dua jenis sesuai dengan protokol komunikasi: Server SMTP dan server POP3/IMAP. Fungsi 1, 2, dan 3 pada gambar di atas diselesaikan oleh server SMTP, sedangkan fungsi 4 diselesaikan oleh server POP3.
2. Email
Beberapa alamat email dapat dibuka di setiap server email. Alamat email juga disebut alamat email. Ini mirip dengan alamat surat dalam kehidupan nyata. Pengguna dapat menerima email dari orang lain dan mengirim email ke orang lain melalui alamat ini. Mendapatkan email yang membutuhkan penerapan di server surat. Tepatnya, email sebenarnya adalah akun yang berlaku pengguna di server email. Server Surat menyimpan surat yang diterima ke ruang kotak surat yang dialokasikan untuk akun tertentu (jadi kami perlu membersihkan surat kami secara teratur, jika tidak kami tidak akan dapat menerima email baru jika ruang yang dialokasikan melebihi ruang yang dialokasikan). Pengguna masuk ke server email untuk memeriksa pesan email yang diterima oleh alamat melalui nama pengguna dan kata sandi yang dia minta.
3. Proses transmisi email
Proses transmisi email dapat diwakili oleh gambar berikut
Deskripsi proses garis solid pada gambar di atas:
1. Setelah klien surat [email protected] membuat koneksi jaringan dengan server SMTP Sina, masuk dengan nama pengguna dan kata sandi Lisi, dan menggunakan protokol SMTP untuk mengirim email ke server SMTP SINA;
2. Setelah menerima email alamat yang dikirimkan oleh [email protected], server SMTP SINA pertama -tama menentukan apakah alamat email penerima berada di dalam yurisdiksi server SMTP berdasarkan akhiran alamat penerima. Jika demikian, surat akan disimpan langsung di alamat email penerima. Otherwise, the SMTP server of sina will query the DNS server for the MX record of the domain name represented by the suffix of the recipient's email address (sohu.com) to obtain the SMTP server information of sohu, and then establish a connection with soho's SMTP server and use the SMTP protocol to send the email to sohu's SMTP server;
3. Setelah server SMTP Soho menerima email dari server SMTP SINA, itu juga akan menentukan apakah email tersebut berada di dalam yurisdiksi server SMTP berdasarkan alamat penerima. Jika demikian, simpan email langsung di kotak surat penerima. Kalau tidak, server SMTP Sohu dapat terus meneruskan email;
4. Akun [email protected] membuat koneksi jaringan dengan server POP3/IMAP Soho melalui klien, dan setelah berhasil masuk, lalu periksa apakah ada email baru di [email protected] email melalui protokol POP3/IMAP. Jika demikian, gunakan protokol POP3 atau IMAP untuk membaca email di kotak surat.
Proses garis putus -putus mirip dengan proses garis solid dan tidak lagi diulang.
JAVAMAIL API adalah paket pengembangan standar yang diadopsi oleh Sun untuk memfasilitasi pengembang Java untuk mengirim dan menerima surat garis solid dalam aplikasi. Ini mendukung beberapa protokol email yang umum digunakan, seperti SMTP, POP3, IMAP dan MIME. Untuk menggunakan API ini, tentu saja, Anda perlu mengunduh paket JAR yang relevan terlebih dahulu. Versi terbaru adalah 1.5.6, alamat unduh: https://java.net/projects/javamail/pages/home.
API Javamail biasanya dapat dibagi menjadi tiga kategori berikut sesuai dengan fungsinya:
1. API untuk membuat dan mem -parsing konten email: Kelas pesan adalah API inti untuk membuat dan parsing email, dan objek instannya mewakili email;
2. API untuk mengirim email: Kelas transportasi adalah kelas API inti untuk mengirim email. Objek contohnya mewakili objek pengiriman surat yang mengimplementasikan protokol pengiriman email tertentu, seperti protokol SMTP;
3. API untuk menerima email: Kelas toko adalah kelas API inti untuk menerima email. Objek contohnya mewakili objek penerima email yang mengimplementasikan protokol penerima email tertentu, seperti protokol POP3.
Kelas Sesi:
Kelas sesi digunakan untuk menentukan informasi lingkungan yang diperlukan oleh seluruh aplikasi, serta mengumpulkan informasi sesi untuk klien untuk membuat koneksi jaringan dengan server surat, seperti nama host, nomor port, dan protokol pengiriman dan penerima yang digunakan. Objek sesi membangun objek transportasi dan menyimpan untuk transmisi dan penerimaan surat berdasarkan informasi ini, dan memberikan dukungan informasi saat membuat objek pesan untuk klien.
Hubungan 4 kelas di atas adalah sebagai berikut:
Sebagian besar konten di atas dikutip dari buku "Penjelasan Detail Pengembangan Java Mail". ArticleBeginner dari Javamail Artikel kedua Buat email akan memperkenalkan cara membuat email menggunakan API yang disediakan oleh Javamail.