اطرح سؤالاً
يعد إنشاء الفاصوليا في الربيع جزءًا مهمًا من دورة حياة الفول. عادة ، لن تتغير الفول بعد التهيئة.
إذن ما هي عملية الفول المثيل الربيعي؟ !
تحليل عملية الفول في فصل الربيع
للحصول على كائن فول ، يجب عليك أولاً الحصول عليه من خلال طريقة GetBean () لـ Beanfactory. خلال هذه الفترة ، سيتم تمرير سلسلة من الخطوات لتثبيت كائن الفول:
الخطوة 1: استدعاء مُنشئ الفول الافتراضي (بالطبع ، يمكن أن يكون أيضًا مُنشئًا آخر محدد) لإنشاء مثيل بين: Bean1.
الخطوة 2: تحقق مما إذا كان يتم حقن قيمة السمة للفول في ملف تكوين الفول. إذا كان هناك حقن ، فقم بالحقن على سماته استنادًا إلى مثيل Bean1 ، في الكتابة فوق Bean1 الأصلي لتشكيل مثيل فول جديد: Bean2.
الخطوة 3: تحقق مما إذا كانت الفول تنفذ واجهة التهيئة. إذا تم تنفيذ هذه الواجهة ، فاتصل بالطريقة بعد propertiesset () لأداء العمليات المقابلة على Bean2 ، والكتابة فوق Bean2 لتشكيل مثيل فول جديد: Bean3.
الخطوة 4: تحقق مما إذا تم تحديد خاصية init-method في ملف تكوين الفول. إذا تم تحديده ، فاتصل بالطريقة المقابلة لهذه الخاصية وقم بإجراء العمليات المقابلة على Bean3 ، وأخيراً الكتابة فوق Bean3 لتشكيل مثيل جديد: Bean4.
من خلال الخطوات المذكورة أعلاه ، وجدنا أنه عندما يكون الفاصوليا في الربيع ، تتغير الفاصوليا باستمرار!
عرض رمز Bean Beach Process Process Process
لتوضيح الخطوات المذكورة أعلاه بشكل أفضل ، يرجى الاطلاع على الرمز التالي:
فئة الكيان:
/*** فئة الكيان*/موظف الفئة العامة يطلق على initializingBean ، DiscipableBean ، Beannameaware {معرف السلسلة الخاصة ؛ // رقم الموظف اسم السلسلة الخاصة ؛ // اسم الموظف سلسلة جنسية خاصة ؛ // الموظف سلسلة السلسلة الخاصة ؛ {system.out.println ("************ الخطوة 1: اتصل بالمشارك الافتراضي للفول *************") ؛ this.id = "bean1: g080405214" ؛ system.out.println ("bean1 قيمة:" + this) ؛ system.out.println ( {system.out.println ("قيمة bean2:" + this) ؛ system.out.println ("************ الخطوة 3: تحقق مما إذا كان الفول ينفذ واجهة التهيئة ************* القيمة: {system.out.println ("************ SERVICE STOP ************* معرف) {this.id = id ؛} السلسلة العامة getName () {return name ؛} public void setName (اسم السلسلة) {this.name = name ؛ getNistorplace () {return nativeplace ؛} public void setNistipplace (سلسلة native) {this.nistileplace = nativePlace ؛} السلسلة العامة getDepartment () {return department ؛} public void setDepartment (string department) {this.department = department ؛} public string getBanname () [id = " + id +" ، name = " + name +" ، sex = " + sex +" ، age = " + age +" ، nativePlace = " + nativePlace +" ، department = " + department +" ، beanname = " + beanname +"] ؛}}أدوات:
! classpathxmlapplicationContext ("ApplicationContext-base.xml") ؛}/*** احصل على كائن ApplicationContext*/Application applicationContext getApplicationContext () {return _instance ؛}}تكوين حبوب الربيع:
<؟ xmlns: context = "http://www.springframework.org/schema/context" XSI: Schemalocation = "http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5 http://www.springframework.org/schema/context/spring-context-2.5.xsd http://www.springframework.org/schema/aop/spring-aop-2.5.xsd <!-================== اختبر عملية إنشاء فول في فصل الربيع في Beanfactory-> <bean id = "exeriee" init-method = "init" DRIDE-METHOD = "Destroy"> <!
فئة الاختبار:
/*** Beanfactory instantiation فئة اختبار هندسة الفول*/اختبار الفئة العامة {public static void main (string args []) {test test = new test () context.getBean ("الموظف") ؛ system.out.println ("************** من الربيع مثيل الفول النهائي الذي تم الحصول عليه بواسطة Beanfactory **********") ؛ system.out.println ("قيمة الفاصوليا النهائية:" + موظف) ؛}}نتائج التشغيل:
************ الخطوة 1: استدعاء المُنشئ الافتراضي للفول ******************* قيمة Bean1: الموظف [id = Bean1: G080405214 ، name = null ، sex = null = null ، nullplace = null ، department = null ، beanname = Bean ********************* قيمة Bean2: الموظف [id = Bean1: G080405214 ، name = null ، sex = null ، age = null ، nativeplace = null ، department = bean2: r & d Department ، beanname = mybeanname] ********* الخطوة 3: [id = bean1: g080405214 ، name = bean3: li xiaohong ، sex = bean3: female ، age = bean3: 25 ، nativeplace = null ، department = bean2: r & d department ، beanname = myBeanname] ********* الخطوة 4: تحقق من أن init-method هو محدد في ملف تكوين الفاصوليا. هذه السمة ******************* قيمة Bean4: الموظف [ID = BEAN1: G080405214 ، NAME = BEAN3: LI XIAOHONG ، SEX = BEAN3: FEMING Beanfactory ************* قيمة الفاصوليا النهائية: الموظف [معرف = Bean1: G080405214 ، الاسم = Bean3: Li Xiaohong ، الجنس = Bean3: أنثى ، العمر = Bean3: 25 ، NativePlace = Bean3: Beijing ، Department = Bean2: R & D Department ، Beanname = MyBeanname]
انطلاقًا من نتائج العملية ، يجب أن نكون واضحين للغاية بشأن عملية تثبيت الفول المحددة.
ينفذ الموظف 3 واجهات:
التهيئة: توفر هذه الواجهة طريقة ما بعد propertiesset () ، والتي تستخدم لتزويد Bean بوظيفة تحديد التهيئة.
DiscorableBean: توفر هذه الواجهة طريقة تدمير () ، والتي تستخدم لتوفير وظائف تشغيلية قبل تدمير مثيل الفول.
Beannameaware: توفر هذه الواجهة طريقة setBeanName () ، والتي يتم استخدامها لتوفير وظيفة تعيين اسم الفول. من نتائج التشغيل أعلاه ، يتم تنفيذ هذه الطريقة في الخطوة الثانية.
لخص
ما سبق هو المحتوى الكامل لهذه المقالة حول عملية إنشاء فول في الربيع. آمل أن يكون ذلك مفيدًا للجميع. يمكن للأصدقاء المهتمين الاستمرار في الرجوع إلى هذا الموقع:
" طريقتان لتخصيص اكتساب الفول في الربيع "
" تحليل رمز مثيل Bean Configuration لتكوين الربيع في Java "
" شرح مفصل لدورة حياة تكوين الربيع واستخدامه "
إذا كانت هناك أي أوجه قصور ، فيرجى ترك رسالة لإشارةها. شكرا لك يا أصدقائك لدعمكم لهذا الموقع!