في الوقت الحاضر ، يلعب البريد الإلكتروني دورًا متزايد الأهمية في حياتنا ، وسيتعامل كل واحد منا معها (على الأقل من وقت لآخر نتلقى البريد العشوائي الذي لا يمكن تفسيره). في العمل ، يمكن أن يؤدي استخدام البريد الإلكتروني للتواصل إلى جعل عملنا يمكن تتبعه وأكثر رسمية. يتم تشغيل هذا يدويًا من قبلنا. في الحياة ، بعد تسجيل حساب على موقع ويب ، سيرسل موقع الويب تلقائيًا بريدًا إلكترونيًا ترحيبًا ويطلب منا تأكيد التسجيل لمنع التسجيل الضار. بالطبع ، من المستحيل تشغيله يدويًا كما نعمل. توفر لنا Javamail في 13 تقنيات Core Java واجهات برمجة التطبيقات للعمل المتعلقة برسائل البريد الإلكتروني.
1. خادم البريد
لتوفير وظائف البريد الإلكتروني على الإنترنت ، يجب أن يكون خادم بريد إلكتروني مخصص متاحًا. يتم إعداد عدد كبير من خوادم البريد الإلكتروني على الإنترنت. على سبيل المثال ، توفر مواقع الويب مثل Sina.com و QQ.com و 163.com خوادم بريد إلكتروني مجانية للجمهور ، كما توفر العديد من الشركات خوادم بريد إلكتروني للموظفين الداخليين ، والتي يمكنها إرسال واستقبال رسائل البريد الإلكتروني من بعضها البعض. إذن ما هي وظيفة خادم البريد؟ يمكن أن يساعدنا في إرسال رسائل البريد الإلكتروني ، وتلقي رسائل البريد الإلكتروني ، وتزويدنا بخدمات الاستلام عبر البريد. هذا مشابه لمكتب البريد في الحياة الحقيقية. لا يمكن فقط تلقي رسائل البريد الإلكتروني ، ولكن أيضًا تقديم خدمات لنا لالتقاط رسائل البريد الإلكتروني ، وكذلك مساعدتنا في إرسال رسائل البريد الإلكتروني. توضح الصور التالية بوضوح وظائف خادم البريد
(1) استلام رسائل البريد التي يقدمها المستخدمون ؛
(2) إعادة توجيه البريد الإلكتروني الذي أرسله المستخدم إلى خادم البريد الهدف ؛
(3) تلقي رسائل البريد الإلكتروني التي يتم إعادة توجيهها بواسطة خوادم البريد الأخرى وتخزين رسائل البريد الإلكتروني في صندوق بريد المستخدم الذي يديره ؛
(4) توفير خدمات القراءة للمستخدمين الذين يأتون لقراءة رسائل البريد الإلكتروني.
يمكن تقسيم خوادم البريد إلى نوعين وفقًا لبروتوكولات الاتصال: SMTP Server وخادم POP3/IMAP. يتم الانتهاء من الوظائف 1 و 2 و 3 في الشكل أعلاه بواسطة خادم SMTP ، بينما يتم الانتهاء من الوظائف 4 بواسطة خادم POP3.
2. البريد الإلكتروني
يمكن فتح عناوين بريد إلكتروني متعددة على كل خادم بريد إلكتروني. يسمى عنوان البريد الإلكتروني أيضًا عنوان بريد إلكتروني. إنه مشابه للعنوان البريدي في الحياة الحقيقية. يمكن للمستخدمين تلقي رسائل بريد إلكتروني من الآخرين وإرسال رسائل بريد إلكتروني إلى الآخرين من خلال هذا العنوان. يتطلب الحصول على بريد إلكتروني التقديم على خادم البريد. لكي تكون دقيقة ، فإن البريد الإلكتروني هو في الواقع حساب يطبقه المستخدم على خادم البريد. يقوم خادم البريد بحفظ البريد المستلم إلى مساحة صندوق البريد المخصصة لحساب معين (لذلك نحتاج إلى تنظيف بريدنا بانتظام ، وإلا فلن نتمكن من تلقي بريد جديد إذا تجاوزت المساحة المخصصة المساحة المخصصة). يقوم المستخدم بتسجيل الدخول إلى خادم البريد للتحقق من رسائل البريد الإلكتروني التي يتلقاها العنوان من خلال اسم المستخدم وكلمة المرور التي يطلبها.
3. عملية نقل رسائل البريد الإلكتروني
يمكن تمثيل عملية نقل البريد الإلكتروني بالرقم التالي
وصف عملية الخط الصلب في الشكل أعلاه:
1. بعد أن يقوم عميل البريد الخاص بـ [email protected] ، ينشئ اتصالًا بشبكة مع SINA's SMTP Server ، ويقوم بتسجيل الدخول باستخدام اسم المستخدم وكلمة المرور من Lisi ، ويستخدم بروتوكول SMTP لإرسال البريد الإلكتروني إلى SINA's SMTP Server ؛
2. بعد تلقي العنوان البريد الإلكتروني المقدم من [email protected] ، يحدد خادم SMTP الخاص بـ SINA أولاً ما إذا كان عنوان البريد الإلكتروني للمستلم يقع ضمن اختصاص خادم SMTP بناءً على لاحقة العنوان للمستلم. إذا كان الأمر كذلك ، فسيتم تخزين البريد مباشرة في عنوان البريد الإلكتروني للمستلم. بخلاف ذلك ، سيقوم خادم SMTP الخاص بـ SINA بالاستعلام عن خادم DNS لسجل MX لاسم المجال الذي يمثله لاحقة عنوان بريد إلكتروني المستلم (sohu.com) للحصول على معلومات خادم SMTP من SOHU ، ثم إنشاء اتصال مع خادم SMTP الخاص بـ SOHO واستخدام بروتوكول SMTP لإرسال البريد الإلكتروني إلى خادم SOHU من SOHU ؛
3. بعد أن يتلقى خادم SMTP من SOHO البريد الإلكتروني من SINA's SMTP Server ، سيحدد أيضًا ما إذا كان البريد الإلكتروني يقع ضمن اختصاص خادم SMTP استنادًا إلى عنوان المستلم. إذا كان الأمر كذلك ، قم بتخزين البريد الإلكتروني مباشرة في صندوق بريد المستلم. خلاف ذلك ، قد يستمر خادم SMTP الخاص بـ Sohu في إعادة توجيه البريد الإلكتروني ؛
4. يقوم حساب [email protected] بإنشاء اتصال شبكة مع خادم POP3/IMAP الخاص بـ SOHO من خلال العميل ، وبعد تسجيل الدخول بنجاح ، ثم تحقق مما إذا كان هناك بريد إلكتروني جديد في البريد الإلكتروني [email protected] عبر بروتوكول POP3/IMAP. إذا كان الأمر كذلك ، استخدم بروتوكول POP3 أو IMAP لقراءة البريد الإلكتروني في صندوق البريد.
تشبه عملية الخط المنقط عملية الخط الصلب ولم تعد متكررة.
Javamail API هي حزمة تطوير قياسية اعتمدتها Sun لتسهيل مطوري Java لإرسال واستقبال البريد الصلب في التطبيقات. وهو يدعم بعض بروتوكولات البريد الشائعة الاستخدام ، مثل SMTP و POP3 و IMAP و MIME. لاستخدام واجهة برمجة التطبيقات هذه ، بالطبع ، تحتاج إلى تنزيل حزمة JAR ذات الصلة أولاً. أحدث إصدار هو 1.5.6 ، عنوان التنزيل: https://java.net/projects/javamail/pages/home.
عادةً ما يمكن تقسيم Javamail API إلى الفئات الثلاث التالية وفقًا لوظائفها:
1. API لإنشاء محتوى البريد الإلكتروني وتحليله: فئة الرسائل هي واجهة برمجة التطبيقات الأساسية لإنشاء وتوضيح رسائل البريد الإلكتروني ، ويمثل كائن مثيلها بريدًا إلكترونيًا ؛
2. API لإرسال رسائل البريد الإلكتروني: فئة النقل هي فئة API الأساسية لإرسال رسائل البريد الإلكتروني. يمثل كائن المثيل الخاص به كائن إرسال البريد الذي ينفذ بروتوكول إرسال بريد إلكتروني معين ، مثل بروتوكول SMTP ؛
3. API لتلقي رسائل البريد الإلكتروني: فئة المتجر هي فئة API الأساسية لتلقي رسائل البريد الإلكتروني. يمثل كائن المثيل الخاص به كائن تلقي البريد الإلكتروني الذي ينفذ بروتوكول بريد إلكتروني معين ، مثل بروتوكول POP3.
فصل الجلسة:
يتم استخدام فئة الجلسة لتحديد معلومات البيئة التي يتطلبها التطبيق بأكمله ، بالإضافة إلى جمع معلومات الجلسة للعميل لإنشاء اتصال شبكة مع خادم البريد ، مثل اسم المضيف ورقم المنفذ وبروتوكول إرسال البريد واستلامه المستخدم. تقوم كائنات الجلسة ببناء كائنات النقل وتخزينها لنقل البريد واستقباله بناءً على هذه المعلومات ، وتوفير دعم المعلومات عند إنشاء كائنات الرسائل للعملاء.
علاقات الفئات 4 أعلاه هي كما يلي:
يتم مقتطف معظم المحتوى أعلاه من كتاب "شرح مفصل لتطوير البريد Java". المقال التالي من Javamail ، المقالة الثانية إنشاء البريد الإلكتروني ستقدم كيفية إنشاء بريد إلكتروني باستخدام واجهة برمجة التطبيقات التي توفرها Javamail.