English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
البحث عن العلاقات الاعتمادية
A obj = new AImpl();
أو يمكننا استخدام طريقة المصنع:
بهذه الطريقة، يمكننا الحصول على الموارد مباشرة من خلال كلمة new.
A obj = A.getA();
بهذه الطريقة، نحصل على الموارد من خلال دعوة طريقة المصنع الثابتة getA().
أو، يمكننا الحصول على الموارد عبر JNDI (واجهة نامي القائمة Java). :,
Context ctx = new InitialContext(); Context environmentCtx = (Context) ctx.lookup("java:comp/env"); A obj = (A)environmentCtx.lookup("A");
يمكن استخدام العديد من طرق الحصول على الموارد للحصول على الموارد. دعونا نرى مشاكل هذا الأسلوب.
هناك مشاكل بحث عن العلاقات الاعتمادية رئيسيتان.
التشابك: يجعل طريقة البحث عن العلاقات الاعتمادية الكود متشابكًا. إذا تم تغيير الموارد، فسيكون من الضروري إجراء الكثير من التغييرات في الكود. اختبار صعب: ينتج هذا الأسلوب الكثير من المشاكل عند اختبار التطبيقات، خاصةً في اختبار الصندوق الأسود.
حقن الاعتماد هو نموذج تصميم يزيل البرمجة. في هذه الحالة، نقدم معلومات من مصدر خارجي (مثل ملف XML). إنه يجعل شيفرة لدينا غير مرتبطة بشكل ضيق، مما يجعلها أسهل للاختبار. في هذه الحالة، سنكتب الشيفرة كما يلي:
class Employee{ Address address; Employee(Address address){ this.address = address; {} public void setAddress(Address address){ this.address = address; {} {}
في هذه الحالة، يتم تقديم مثال على كائن Address من مصدر خارجي (مثل ملف XML) من خلال التركيب أو الطريقة المحددة.
يقدم إطار Spring طريقتين لحقن الاعتماد
من خلال التركيب من خلال الطريقة المحددة