من خلال هذه المقالة ، سأقدم لكم عدة طرق لتثبيت الفاصوليا في الربيع من خلال رمز المثال. دعونا نلقي نظرة على المحتوى المحدد.
1. استخدم مُنشئ الفئة لتنفيذ إنشاء مثيل (مُنشئ بين بين)
<bean id = "OrderService"/>
2. استخدم أساليب المصنع الثابتة لتحقيق مثيل
<bean id = "personervice" class = "cn.itcast.orderfactory" المصنع-method = "createRorder"/> orderfactory {private static orderfactory orderfactory = new orderfactory () ؛ orderfactory الخاص () ؛ static static orderfactory createRorder () {return orderfactory ؛ }}3. استخدم طريقة مصنع الاستئصال لتحقيق مثيل (من خلال فول من الكيانات الأخرى)
<bean id = "personervicefactory" class = "cn.itcast.service.orderfactory"/> <bean id = "persionservice" factory-bean = "personervicefactory" method = "createRander"/> orderfactory {private static orderservice = new orderservice () ؛ orderfactory الخاص () ؛ OrderService static public createorderserviceBean {return orderservice ؛ }}عادةً ما نسمي Beanfactory أو ApplicationContext المسؤول عن تحميل الحاوية الزنبركية. يتم تحميل كلاهما بالفاصوليا من خلال ملف تكوين XML. بالمقارنة مع ApplicationContext و Beanfacotry ، فإن الفرق الرئيسي هو أن Beanfacotry يتم تحميله كسول ، ويتم تسمية الفاصوليا عند الحصول على GetBean (). إذا كان لا يمكن حقن سمة معينة من الفول ، فسيتم طرح استثناء في هذا الوقت ؛ و ApplicationContext الافتراضية لتثبيت جميع الفاصوليا عند تهيئة نفسها ، ما لم يتم تعيين lazy-init = "true" على الفول ، وهو ما يفضي إلى التحقق مما إذا كان يمكن حقن سمة التبعية.
بالإضافة إلى ذلك ، يوفر ApplicationContext المزيد من وظائف التمديد ، مثل المعالجة الدولية لملفات الموارد التي سيتم تحميلها ومعالجتها لـ BeanPostProcessor. لذلك ، في تطبيقات J2EE ، نختار عادة استخدام ApplicationContext. سواء كان استخدام Beanfactory أو ApplicationContext ، يقوم Spring بتهيئة الفاصوليا في Singleton افتراضيًا.
لتهيئة Beanfactory ، عادة ما يتم استخدام الكود التالي:
مورد ClassPathResource = جديد classPathResource ("Beans.xml") ؛ مصنع BeanFactory = جديد XmlBeanFactory (Resource) ؛لتهيئة ApplicationContext ، يتم تكوينه عادة في web.xml:
<context-param> <Param-name> contextConfigLocation </param-name> <param-value> classpath: conf/appcontext.xml </parm-value> </sutext-param> <nistener> <stanker-class> org.springframework.web.context.context.
لخص
ما ورد أعلاه هو كل التفسير التفصيلي لكود حبوب الخزانة الربيعية. آمل أن يكون ذلك مفيدًا للجميع. يمكن للأصدقاء المهتمين الاستمرار في الرجوع إلى الموضوعات الأخرى ذات الصلة على هذا الموقع. إذا كانت هناك أي أوجه قصور ، فيرجى ترك رسالة لإشارةها. شكرا لك يا أصدقائك لدعمكم لهذا الموقع!