欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring中Bean的生命周期實(shí)例講解

 更新時(shí)間:2023年08月17日 09:09:07   作者:程序小勇  
這篇文章主要介紹了Spring中Bean的生命周期講解,而Spring中的一個(gè)Bean從開始到結(jié)束經(jīng)歷很多過程,但總體可以分為六個(gè)階段Bean定義、實(shí)例化、屬性賦值、初始化、生存期、銷毀,需要的朋友可以參考下

一、bean生命周期

其定義為:從對(duì)象的創(chuàng)建到銷毀的過程。

而Spring中的一個(gè)Bean從開始到結(jié)束經(jīng)歷很多過程,但總體可以分為六個(gè)階段Bean定義、實(shí)例化、屬性賦值、初始化、生存期、銷毀。

二、案例代碼演示

1.首先我們來創(chuàng)建一個(gè)包,在包中創(chuàng)建一個(gè)Orders的對(duì)象,然后在對(duì)象中創(chuàng)建一個(gè)無參構(gòu)造方法....

package Collectiona.bean;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.config.BeanPostProcessor;
public class MyBeanPost implements BeanPostProcessor {
    @Override
    public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {
        System.out.println("在初始化之前執(zhí)行的方法。");
        return bean;
    }
    @Override
    public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
        System.out.println("在初始化之后執(zhí)行的方法。");
        return bean;
    }
}

2.SpringBean生命周期中的增強(qiáng)接口PostProcessor;

postProcessBeforeInitialization方法執(zhí)行前,會(huì)執(zhí)行很多Aware類型的接口,這種類型接口作用是加載資源到Spring容器中。

我們?cè)趧?chuàng)建一個(gè)MyBeanPost的類來實(shí)現(xiàn)BeanPostProcessor接口。 ?

package Collectiona.bean;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.config.BeanPostProcessor;
public class MyBeanPost implements BeanPostProcessor {
    @Override
    public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {
        System.out.println("在初始化之前執(zhí)行的方法。");
        return bean;
    }
    @Override
    public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
        System.out.println("在初始化之后執(zhí)行的方法。");
        return bean;
    }
}

3.在xml文件中配置相關(guān)信息。初始化方式,配置的init-method;最后容器銷毀,配置的destroy-method.

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
    <bean id="orders" class="Collectiona.bean.Orders" init-method="initMethod" destroy-method="destroyMethod">
        <property name="oname" value=""></property>
    </bean>
    <bean id="myBeanPost" class="Collectiona.bean.MyBeanPost">
    </bean>
</beans>

4.最后是進(jìn)行測(cè)試輸出:

package Collectiona.testSpring;
import Collectiona.bean.Orders;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class demo {
    public static void main(String[] args) {
ClassPathXmlApplicationContext("classpath:Bean4.xml");
        ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("classpath:Bean4.xml");
        Orders orders = context.getBean("orders",Orders.class);
        System.out.println("第四步:獲取bean的實(shí)例對(duì)象");
        System.out.println(orders);
        context.close();
    }
    }

最終輸出的結(jié)果是:

到此這篇關(guān)于Spring中Bean的生命周期實(shí)例講解的文章就介紹到這了,更多相關(guān)Bean的生命周期內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java中類變量和類方法的基本使用

    Java中類變量和類方法的基本使用

    這篇文章主要介紹了Java中類變量和類方法的基本使用,類變量也叫靜態(tài)變量/靜態(tài)屬性,是該類的所有對(duì)象共享的變量,任何一個(gè)該類的對(duì)象訪問它時(shí),取到的都是相同的值,同樣任何一個(gè)該類的對(duì)象去修改它時(shí),修改的也是同一個(gè)變量,需要的朋友可以參考下
    2023-07-07
  • windows下jar包開機(jī)自動(dòng)重啟的步驟

    windows下jar包開機(jī)自動(dòng)重啟的步驟

    這篇文章主要給大家介紹了關(guān)于windows下jar包開機(jī)自動(dòng)重啟的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • java如何測(cè)試網(wǎng)絡(luò)連通性

    java如何測(cè)試網(wǎng)絡(luò)連通性

    這篇文章主要為大家詳細(xì)介紹了java測(cè)試網(wǎng)絡(luò)連通性的兩種方式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • Java運(yùn)行時(shí)jar終端輸出的中文日志亂碼兩種解決方式

    Java運(yùn)行時(shí)jar終端輸出的中文日志亂碼兩種解決方式

    jar包啟動(dòng),今天java開發(fā)過來找,說jar包啟動(dòng)日志是亂碼,這篇文章主要給大家介紹了關(guān)于Java運(yùn)行時(shí)jar終端輸出的中文日志亂碼的兩種解決方式,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2024-01-01
  • 使用resty Quartz執(zhí)行定時(shí)任務(wù)的配置方法

    使用resty Quartz執(zhí)行定時(shí)任務(wù)的配置方法

    這篇文章主要為大家介紹了使用resty?Quartz來執(zhí)行定時(shí)任務(wù)的配置方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2022-03-03
  • 給JavaBean賦默認(rèn)值并且轉(zhuǎn)Json字符串的實(shí)例

    給JavaBean賦默認(rèn)值并且轉(zhuǎn)Json字符串的實(shí)例

    這篇文章主要介紹了給JavaBean賦默認(rèn)值并且轉(zhuǎn)Json字符串的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • eclipse配置javap命令的方法

    eclipse配置javap命令的方法

    本篇文章主要介紹了如何為eclipse配置javap命令,在配置過程中會(huì)出現(xiàn)的小問題的解決方法,非常實(shí)用,需要的朋友可以參考下
    2015-07-07
  • Java實(shí)現(xiàn)的Excel列號(hào)數(shù)字與字母互相轉(zhuǎn)換功能

    Java實(shí)現(xiàn)的Excel列號(hào)數(shù)字與字母互相轉(zhuǎn)換功能

    這篇文章主要介紹了Java實(shí)現(xiàn)的Excel列號(hào)數(shù)字與字母互相轉(zhuǎn)換功能,涉及java針對(duì)Excel相關(guān)數(shù)值與字符串操作技巧,需要的朋友可以參考下
    2018-03-03
  • Spring Security基于JWT實(shí)現(xiàn)SSO單點(diǎn)登錄詳解

    Spring Security基于JWT實(shí)現(xiàn)SSO單點(diǎn)登錄詳解

    這篇文章主要介紹了Spring Security基于JWT實(shí)現(xiàn)SSO單點(diǎn)登錄詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • JavaBean和SpringBean的區(qū)別及創(chuàng)建SpringBean方式

    JavaBean和SpringBean的區(qū)別及創(chuàng)建SpringBean方式

    這篇文章主要介紹了JavaBean和SpringBean的區(qū)別及創(chuàng)建SpringBean方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-10-10

最新評(píng)論