البريد الإلكتروني في الحياة اليومية. تقدم هذه المقالة بشكل أساسي طريقة Java لإرسال رسائل البريد الإلكتروني بناءً على SMTP. إنه يحلل المهارات ذات الصلة لرسائل البريد الإلكتروني المرسلة من Java بناءً على خدمة SMTP. لديها قيمة مرجعية معينة. يمكن للأصدقاء الذين يحتاجون إليها الرجوع إليها.
1. اكتب فئة MailSendProper لتغليف الخصائص المطلوبة
استيراد java.util.properties ؛ الطبقة العامة mailsendproper {private String Host ؛ // IP منفذ السلسلة الخاصة لخادم البريد إرسال ؛ // رقم المنفذ من SendAddress SendAddress SendAddress SendAddress ؛ // عنوان مرسل البريد الخاص السلسلة الخاصة // عنوان مستلم البريد الخاص بالسلسلة الخاصة. // تسجيل الدخول إلى إرسال اسم مستخدم صندوق البريد ؛ // قم بتسجيل الدخول إلى إرسال كلمة مرور صندوق البريد الخاص بملاحظة منطقية isValidate = true ؛ // ما إذا كانت المصادقة مطلوبة موضوع سلسلة خاصة ؛ // عنوان البريد الإلكتروني محتوى السلسلة الخاصة ؛ // البريد الإلكتروني محتوى السلسلة العامة getSubject () {return tource ؛ } public void setSUBject (string string) {this.subject = toffice ؛ } السلسلة العامة getContent () {return content ؛ } public void setContent (string content) {this.content = content ؛ } السلسلة العامة gethost () {return host ؛ } public void sethost (سلسلة مضيف) {host = host ؛ } السلسلة العامة getPort () {return port ؛ } public void setPort (منفذ السلسلة) {port = port ؛ } السلسلة العامة getendaddress () {return sendaddress ؛ } public void setSendAddress (String sendaddress) {sendAddress = sendAddress ؛ } السلسلة العامة getReceiveadDress () {return reveveaddress ؛ } public void setReceiveadDress (String reveiveaddress) {reveiveaddress = reveiveaddress ؛ } السلسلة العامة getUserName () {return username ؛ } public void setusername (string username) {this.userName = username ؛ } السلسلة العامة getPassword () {return password ؛ } public void setPassword (سلسلة كلمة مرور) {this.password = password ؛ } boolean public isisvalidate () {return isValidate ؛ } public void setisvalidate (boolean isValidate) {this.isvalidate = isValidate ؛ } الخصائص العامة getProperties () {Properties Properties = New Properties () ؛ properties.put ("mail.smtp.host" ، this.host) ؛ properties.put ("mail.smtp.port" ، this.port) ؛ properties.put ("mail.smtp.auth" ، isValidate؟ "true": "false") ؛ عودة خصائص }}2. اكتب eMailMessage لتغليف معلومات الإرسال
الطبقة العامة EmailMessage {عنوان السلسلة الخاصة ؛ سياق السلسلة الخاصة ؛ سلسلة خاصة البريد الإلكتروني العام () {super () ؛ } public emailMessage (عنوان السلسلة ، سياق السلسلة ، سلسلة toemail) {super () ؛ this.title = title ؛ this.context = السياق ؛ this.toemail = toemail ؛ } السلسلة العامة getTitle () {return title ؛ } public void settitle (tring title) {this.title = title ؛ } السلسلة العامة getContext () {return Context ؛ } public void setContext (String Context) {this.context = context ؛ } السلسلة العامة getToemail () {return toemail ؛ } public void setToemail (String toemail) {this.toemail = toEmail ؛ }}3. اكتب فئة مرور البريد الإلكتروني عبر البريد الإلكتروني
استيراد javax.mail.authenticator ؛ استيراد javax.mail.passwordauthentication ؛ الفئة العامة mailattorney يمتد Authenticator {private String username ؛ كلمة مرور السلسلة الخاصة ؛ Mailattorney العامة (اسم المستخدم ، كلمة مرور السلسلة) {this.userName = username ؛ this.password = كلمة المرور ؛ }. }}4. اكتب فئة أداة بريد Mailsend
استيراد java.util.date ؛ استيراد javax.mail.address ؛ استيراد javax.mail.message ؛ استيراد javax.mail.Session {public static boolean mailtest (MailSendProper Mailsender) {Mailattorney Attorney = null ؛ if (mailsender.isisvalidate ()) {// تحديد ما إذا كانت مصادقة الهوية مطلوبة محامي = mailattorney new (mailsender.getUserName () ، mailsender.getPassword ())) ؛ } // إنشاء جلسة جلسة عرض لإرسال صندوق البريد بناءً على سمات جلسة صندوق البريد ومقحة كلمة المرور. جلسة الجلسة = session.getInstance (mailsender.getProperties () ، محامي) ؛ // قم بإنشاء رسالة بريد بناءً على رسالة MailMessage Mailmessage = mimemessage جديد (جلسة) ؛ حاول {// إنشاء عنوان مرسل عنوان صندوق البريد من = New InternetAddress (mailsender.getSendAddress ()) ؛ // قم بتعيين مرسل Mailbox Message MailMessage.setFrom (من) ؛ // قم بإنشاء العنوان لتلقي هذا من رسالة البريد وقم بتعيينه على عنوان رسالة البريد إلى = New InternetAddress (mailsender.getReceiveadDress ()) ؛ mailmessage.setRecipient (message.RecipientType.to ، to) ؛ mailmessage.setsubject (mailsender.getSubject ()) ؛ // تعيين عنوان البريد mailmessage.setsentDate (تاريخ جديد ()) ؛ // قم بتعيين time mailmessage.settext (mailsender.getContent ()) ؛ // اضبط محتوى البريد. Send (MailMessage) ؛ العودة صحيح. } catch (استثناء e) {E.PrintStackTrace () ؛ العودة كاذبة }} static boolean sendemail (رسالة البريد الإلكتروني) {mailSendProper mail = new MailSendProper () ؛ mail.sethost ("smtp.126.com") ؛ // بروتوكول نقل البريد البسيط الخاص بـ SMTP ، رقم المنفذ الافتراضي هو 25 ، mail.setport ("25") ؛ mail.setisvalidate (true) ؛ // تتطلب mail.setUserName المصادقة ("") ؛ // قم بتعيين اسم المستخدم mail.setPassword ("") ؛ // قم بتعيين بريد كلمة مرور المرسل. // قم بتعيين عنوان إرسال هذا المرسل واسم مستخدم تسجيل الدخول هو نفس mail.setReceiveadDress (message.getToemail ()) ؛ // قم بتعيين Mail.SetSubject (message.getTitle ()) ؛ // قم بتعيين صندوق البريد mail.setContent (message.getContext ()) ؛ // اضبط محتوى Mailbox Return Mailtest (Mail) ؛ }}ملاحظة: يجب تمكين عنوان البريد الإلكتروني المستخدم لخدمة POP3/SMTP بنجاح. تحتوي عناوين البريد الإلكتروني المختلفة وعناوين البريد الإلكتروني على بروتوكولات نقل مختلفة ، مثل:
QQ البريد الإلكتروني: بروتوكول نقل SMTP هو SMTP.QQ.com PORT 25
بروتوكول نقل POP3 هو POP3.QQ.com PORT 110
5. استخدم اختبار الطريقة
public static void main (string [] args) {emailMessage message = new emailMessage () ؛ رمز السلسلة = string.valueof (math.random ()). substring (3 ، 9) ؛ // إنشاء رسالة رمز التحقق. settitle ("التحقق من البريد الإلكتروني") ؛ // رسالة البريد الإلكتروني message.setContext ("Hello ، عزيزي المستخدم ، رمز التحقق الخاص بك هو"+رمز+".") ؛ // البريد الإلكتروني لمحتوى message.settoemail ("[email protected]") ؛ // من الذي يجب إرساله إلى system.out.println (mailsend.sendemail (message)؟ "sendsuccess": "sendfailed") ؛}آمل أن يكون هذا المقال مفيدًا للجميع لتعلم برمجة Java.