1. แนวคิดที่เกี่ยวข้องของอีเมล
ข้อตกลงอีเมล ส่วนใหญ่รวมถึง:
SMTP Protocol: Simple Mail Transfer Protocol ซึ่งเป็นโปรโตคอลการถ่ายโอนจดหมายอย่างง่ายใช้ในการส่งอีเมล
POP3 Protocol: Post Office Protocol 3 ซึ่งเป็นรุ่นที่สามของโปรโตคอลที่ทำการไปรษณีย์ใช้เพื่อรับจดหมาย
โปรโตคอล IMAP: โปรโตคอลการเข้าถึงข้อความอินเทอร์เน็ตซึ่งเป็นโปรโตคอลทางเลือกสำหรับ POP3
-
2. สร้างเซิร์ฟเวอร์ James Mail
เจมส์เป็นโครงการโอเพ่นซอร์สของ Apache การใช้งาน Java บริสุทธิ์
สร้างเซิร์ฟเวอร์เจมส์
①ดาวน์โหลด apache-james-2.3.2.zip เพื่อคลายการบีบอัด
② run run.bat ในไดเรกทอรี bin เพื่อเริ่มเซิร์ฟเวอร์ [Telnet LocalHost 4555]
③กำหนดค่าเซิร์ฟเวอร์ผ่านแอพ/James/sar-inf/config.xml
หมายเหตุ: ไปที่ถังขยะก่อน หากไม่ใช่ไดเรกทอรีภาษาจีนคุณต้องเปิดไคลเอนต์ Telnet บนแผงควบคุม
-
3. ติดตั้ง Outlook [Mail Client]
คีย์ผลิตภัณฑ์: PQDV9-GPDV4-CRM4D-PhDTH-4M2MT
สร้างบัญชีผู้ใช้
1. ใช้ telnet เพื่อเชื่อมต่อกับเครื่องมือการบริหารระยะไกลของเจมส์
2. เข้าสู่ระบบในฐานะผู้ดูแลระบบ
3. ใช้คำสั่ง Adduser เพื่อเพิ่มผู้ใช้
-
4. กำหนดค่าไคลเอนต์ Outlook Mail
สำหรับการดูง่ายคุณสามารถกำหนดค่าไคลเอนต์ Microsoft Outlook Mail เพื่อให้แน่ใจว่าเซิร์ฟเวอร์ James Mail อยู่ในสถานะเริ่มต้นและเริ่ม Microsoft Outlook
เลือกเครื่องมือ -> ตัวเลือกในการเปิดแผงตัวเลือก เลือก "การตั้งค่าจดหมาย" และคลิก "บัญชีอีเมล" เพื่อเปิดแผง "การตั้งค่าบัญชี" สร้างบัญชีอีเมลใหม่ภายใต้แท็บอีเมล
-
5. กรณี [สร้างเซิร์ฟเวอร์ James Mail]
คำอธิบายข้อกำหนด:
สร้างเซิร์ฟเวอร์ James Mail บนเครื่องนี้และปรับแต่งชื่อของเซิร์ฟเวอร์
สร้างผู้ใช้ทดสอบสองคน
กำหนดค่าหนึ่งในผู้ใช้ทดสอบใน Microsoft Outlook เป็นบัญชี Outlook Mail
-
6. ใช้ Javamail เพื่อส่งอีเมล (กรณี)
ความต้องการ:
การใช้เทคโนโลยี Javamail เราสามารถส่งอีเมลจากบัญชี A ไปยังบัญชี B พร้อมชื่อ "ประกาศการประชุม" และเนื้อหาอีเมลคือ "Hello XX! โปรดไปที่ห้องประชุม B01 ตรงเวลาเวลา 16:00 น. บ่ายวันพรุ่งนี้เพื่อจัดการประชุมอภิปรายทางเทคนิค" ตรวจสอบว่าอีเมลที่ส่งโดยโปรแกรมเมลจะถูกส่งผ่านไคลเอนต์ Outlook สำเร็จหรือไม่
รหัสคีย์:
สร้างคลาส emailauthenticator และสืบทอดจาก Authenticator และปลูกฝังชื่อผู้ใช้และรหัสผ่าน
สร้างคลาสเมลเพื่อตั้งค่าข้อมูลอีเมล:
จดหมายเรียนสาธารณะ {Private String Mailserver, จาก, ถึง, Mailsubject, MailContent; ชื่อผู้ใช้สตริงส่วนตัวรหัสผ่าน; จดหมายสาธารณะ () {// ตั้งค่าข้อมูลอีเมล // ชื่อผู้ใช้สำหรับการรับรองความถูกต้องผู้ใช้ชื่อผู้ใช้ = "[email protected]"; // รหัสผ่านการตรวจสอบความถูกต้อง = "HQ"; // เซิร์ฟเวอร์เมลที่สอดคล้องกับ Mailbox MailServer ที่ผ่านการรับรองความถูกต้อง = "192.168.17.176"; // ข้อมูลผู้ส่งจาก = "WJ"; // ข้อมูลผู้รับถึง = "[email protected]"; // อีเมลชื่อเรื่อง mailsubject = "เราทุกคนเป็นเด็กดี 333"; // อีเมลเนื้อหา MailContent = "นี่คืออีเมลทดสอบ! หากมีความคล้ายคลึงกันใด ๆ มันเป็นไปไม่ได้หมดจด"; } // ตั้งค่าเซิร์ฟเวอร์เมล @SuppressWarnings ("คงที่-access") โมฆะสาธารณะส่ง () {คุณสมบัติ prop = system.getProperties (); // ระบุ Mail Server Prop.put ("Mail.smtp.host", MailServer); // ว่าจะเปิดใช้งาน prop.put ("mail.smtp.auth", "true"); //prop.put("mail.smtp.port "," 25 "); // บริการเซสชัน emailauthenticator mailauth = ใหม่ emailauthenticator (ชื่อผู้ใช้รหัสผ่าน); Session Mailsession = session.getInstance (prop, (Authenticator) MailAuth); ลอง {// encapsulate message message message = new mimeMessage (mailsession); Message.setFrom (InternetAddress ใหม่ (จาก)); // ผู้ส่ง message.setRecipient (message.recipientType.to, InternetAddress ใหม่ (ถึง)); // ผู้รับข้อความ SetsUbject (MailSubject); // ตั้งค่าเนื้อหา (ตั้งค่าอักขระเพื่อจัดการกับปัญหาที่อ่านไม่ออก) ข้อความ SetContent (MailContent, "ข้อความ/html; charset = gbk"); message.setSentDate (วันที่ใหม่ ()); // สร้างอินสแตนซ์การขนส่งและส่งอีเมล Transport tran = mailsession.getTransport ("SMTP"); tran.send (ข้อความ, message.getAllRecipients ()); tran.close (); } catch (exception e) {e.printstacktrace (); -คลาสทดสอบ:
คลาสสาธารณะ mytest {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {จดหมายจดหมาย = new mail (); Mail.Send (); System.out.println ("ความสำเร็จ!"); --
7. ส่งจดหมายพร้อมไฟล์แนบ
MailWithAtchment Public Class {Private Javamailsender Mailsender; // javamailsender โมฆะสาธารณะ setmailsender (Javamailsender Mailsender) {this.mailsender = mailsender; } โมฆะสาธารณะส่ง () พ่น MessagingException, iOexception {MIMEMESSAGE MIMEMESSAGE = MAILSENDER.CreateMimEmessage (); MimemessageHelper Helper = ใหม่ MEMEMESSAGEHELPER (MEMEMESSAGE, TRUE, "UTF-8"); helper.setfrom ("[email protected]"); helper.setto ("[email protected]"); helper.setsubject ("hahaha"); helper.settext ("ยิ้มทุกวันมีความสุข !!!"); // เพิ่มสิ่งที่แนบมา 1 classpathresource file1 = ใหม่ classpathresource ("/cn/bdqn/attachfiles/test.doc"); helper.addattachment (file1.getFilename (), file1.getFile ()); // เพิ่มสิ่งที่แนบ 2: เมื่อชื่อไฟล์ของไฟล์แนบเป็นภาษาจีนชื่อไฟล์จะต้องถูกเข้ารหัสและแปลงเพื่อแก้ปัญหาของ classpathresource file2 = ใหม่ classpathresource ("/cn/bdqn/attachfiles/attachfiles.doc"); helper.addattachment (mimeutility.encodeword (file2.getFilename ()), file2.getFile ()); Mailsender.Send (mimemessage); -คลาสทดสอบ:
MailTest คลาสสาธารณะ {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {applicationcontext context = ใหม่ classPathxMlApplicationContext ("ApplicationContext.xml"); /*ทดสอบจดหมายพร้อมไฟล์แนบ*/ ลอง {MailWithAttachment MailWithAttachment = (MailWithAttachment) Context.getBean ("MailWithAttachment"); mailwithattach.send (); } catch (exception e) {system.out.print (e.toString ()); -ApplicationContext.xml: การกำหนดค่าขนาดใหญ่
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่ามันจะเป็นประโยชน์ต่อการเรียนรู้ของทุกคนและฉันหวังว่าทุกคนจะสนับสนุน wulin.com มากขึ้น