عندما نذهب عادةً على الإنترنت ، نستخدم غالبًا تسجيل موقع الويب. هناك العديد من الطرق ، مثل إرسال الرسائل النصية للتحقق من رسائل البريد الإلكتروني وإرسالها. في الآونة الأخيرة ، ضمن إطار SSH ، تم إجراء رابط تنشيط بريد إلكتروني بسيط إلى صندوق البريد ثم تنشيط وظيفة تسجيل المستخدمين. إن MailServer الذي أستخدمه هو خادم بريد سهل البريد ، والذي يشير إلى حزمة javax.mail.jar. كما يوحي الاسم ، يوفر Javamail للمطورين واجهات البرمجة المتعلقة بمعالجة رسائل البريد الإلكتروني. إنها واجهة برمجة تطبيقات صدرها Sun للتعامل مع البريد الإلكتروني. يمكن أن يؤدي بشكل مريح بعض عمليات نقل البريد شائعة الاستخدام.
【فئات شائعة مقدمة】
فيما يلي بعض الفصول الشائعة الاستخدام ، اسمحوا لي أن أقدمها لك:
【المصادقة】
هذه فئة مجردة تصل إلى الموارد المحمية من خلال اسم المستخدم وكلمة المرور ، وهي خوادم بريد. بعد اكتمال الإنشاء ، يجب تسجيل المصادقة في الجلسة. ثم ، عند الحاجة إلى المصادقة ، سيتم إخطار المصادقة.
【رسالة】
هذا فئة مجردة لإنشاء رسائل ليتم إرسالها ، مثل الموضوعات والمحتوى. يجب أن يكون هناك فئة فرعية لتنفيذ الطريقة.
【حصة】
تحدد فئة الجلسة جلسة بريد أساسية ، وهي فئة إدخال أعلى مستوى من API Java Mail API. جميع الفصول الأخرى فعالة فقط من خلال هذه الجلسة. تستخدم كائنات الجلسة java.util.properties كائنات للحصول على معلومات ، مثل خادم البريد واسم المستخدم وكلمة المرور والمعلومات الأخرى المشتركة في جميع أنحاء التطبيق. يمثل فئة الجلسة جلسة بريد في Javamail. يحتوي كل تطبيق قائم على Javamail على جلسة واحدة على الأقل ولكن يمكن أن يكون لها أكبر عدد ممكن من الجلسات.
جلسة sendmailsession ؛
sendMailsession = session.getInstance (الدعائم ، فارغة) ؛
【ينقل】
الجزء الأخير من إرسال الرسائل هو استخدام فئة النقل. يرسل هذا الفئة رسائل باللغة المحددة بواسطة البروتوكول (عادةً SMTP). إنها فئة مجردة ، وهي تعمل بشكل مشابه إلى حد ما للجلسة. من خلال استدعاء طريقة SEND () الثابتة ، يمكن استخدام الإصدار الافتراضي للفئة: Transport.send (Message). بدلاً من ذلك ، يمكن للقراء الحصول على مثيل محدد من جلسة مقابل بروتوكولهم الخاص ، وتمرير اسم المستخدم وكلمة المرور (ليس إذا لم يكن ذلك ضروريًا) ، وإرسال رسالة ، ثم أغلق الاتصال.
【تنفيذ الكود】
فئة أدوات البريد:
حزمة cn.itcast.shop.utils ؛ استيراد java.util.properties ؛ استيراد javax.mail.Authenticator ؛ استيراد javax.mail.message ؛ استيراد javax.mail.message.recipienttype ؛ استيراد javax.mail.message.recipienttype ؛ استيراد javax.mail.messagingexception ؛ استيراد javax.mail.passwordauthentication ؛ استيراد javax.mail.session ؛ استيراد javax.mail.transport ؛ استيراد javax.mail.internet.addressException ؛ استيراد javax.mail.internet.internetaddress ؛ استيراد javax.mail.internet.mimessage ؛ / ** * فئة أداة إرسال البريد * Author Zhouzhou * date 2016-1-1 * time 08:52:47 AM */ public class mailuitls {public static void sendmail (سلسلة إلى ، رمز السلسلة) {/ ** * 1. الحصول على الجلسة * 2. props.setProperty ("mail.host" ، "localhost") ؛ جلسة الجلسة = session.getDefaultInstance (الدعائم ، المصادقة الجديدة () {Override محمية passwordauthentication getPasswordAuthentication () {// todo method method method method clud rotct clovateaction ("[email protected]" ، "111") ؛}}) ؛ // 2. قم بإنشاء رسالة رسالة إرسال بريد = جديد mimemessage (الجلسة) ؛ // 3. قم بتعيين المرسل Try {message.setfrom (new InternetAddress ("[email protected]")) ؛ // قم بتعيين message.addrecipient (recientType.to ، New InternetAddress (إلى)) ؛ // title message.setsubject ("البريد الإلكتروني للتنشيط الرسمي من Zhouzhou Mall") ؛ message.setContent ("<h1> Azz Mall Activation Email! انقر على الرابط أدناه لإكمال عملية التنشيط! </h1> <h3> <a href = 'http: //192.168.21.114: 8080/shop/user_active.action؟ code = "+code+"'> http://192.168.21.114:8080/shop/user_active // 3. إرسال البريد الإلكتروني: transport.send (رسالة) ؛ } catch (addressException e) {// todo catch catch e.printstacktrace () ؛ } catch (messagingException e) {// todo catch catch e.printstacktrace () ؛ }} public static void main (string [] args) {sendMail ("[email protected]" ، "رمز التنشيط الخاص بك هو AZZ19931016") ؛ }} طبقة أعمال المستخدم تستدعي هذه الفئة عند التسجيل واستخدام طريقة SendMail.
حزمة cn.itcast.shop.user.service ؛ استيراد org.springframework.transaction.annotation.transactional ؛ استيراد cn.itcast.shop.user.dao.userdao ؛ استيراد cn.itcast.shop.user.vo.user ؛ استيراد cn.itcast.shop.utils.mailuitls ؛ استيراد cn.itcast.shop.utils.uuiduTils ؛ . public void setuserdao (userDao userDao) {this.userdao = userDao ؛ } المستخدم العام FindByUserName (string username) {return userDao.findByuserName (اسم المستخدم) ؛ } // طبقة الأعمال: إكمال تسجيل المستخدم Public Void Save (المستخدم) {// TODO Method Method method // حفظ البيانات في قاعدة البيانات user.setState (0) ؛ // 1 ، لم يتم تنشيط 0 رمز السلسلة = uuidutils.getuuid ()+uuiduTils.getuid () ؛ user.setCode (رمز) ؛ userDao.save (المستخدم) ؛ // إرسال البريد الإلكتروني للتفعيل ؛ mailuitls.sendmail (user.getemail () ، code) ؛ }. } // طريقة لتعديل تحديث الفراغ العام للمستخدم (User up ustuser) {userDao.update (extressUser) ؛ } // طريقة لتسجيل الدخول إلى تسجيل الدخول إلى المستخدم العام (مستخدم المستخدم) {return userDao.login (user) ؛ }}أخيرًا ، تم تحقيق هذا التأثير:
ما سبق هو كل شيء عن هذا المقال ، آمل أن يكون مفيدًا لتعلم الجميع.