最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring中Bean的生命周期實例講解

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

一、bean生命周期

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

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

二、案例代碼演示

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

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生命周期中的增強接口PostProcessor;

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

我們在創(chuàng)建一個MyBeanPost的類來實現(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文件中配置相關信息。初始化方式,配置的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.最后是進行測試輸出:

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的實例對象");
        System.out.println(orders);
        context.close();
    }
    }

最終輸出的結果是:

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

相關文章

  • Java中的StringBuilder性能測試

    Java中的StringBuilder性能測試

    這篇文章主要介紹了Java中的StringBuilder性能測試,本文包含測試代碼和測試結果,最后得出結論,需要的朋友可以參考下
    2014-09-09
  • Mybatis-Plus實現(xiàn)自動生成代碼的操作步驟

    Mybatis-Plus實現(xiàn)自動生成代碼的操作步驟

    AutoGenerator 是 MyBatis-Plus 的代碼生成器,通過 AutoGenerator 可以快速生成 Entity、Mapper、Mapper XML、Service、Controller 等各個模塊的代碼,極大的提升了開發(fā)效率,本文將給大家介紹Mybatis-Plus實現(xiàn)自動生成代碼的操作步驟
    2023-10-10
  • String與XML互轉以及從XML取節(jié)點值并修改的方法

    String與XML互轉以及從XML取節(jié)點值并修改的方法

    今天小編就為大家分享一篇String與XML互轉以及從XML取節(jié)點值并修改的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • Java7和Java8中的ConcurrentHashMap原理解析

    Java7和Java8中的ConcurrentHashMap原理解析

    這篇文章主要介紹了Java7和Java8中的ConcurrentHashMap原理解析,對ConcurrentHashMap感興趣的讀者,一定要好好看一下
    2021-04-04
  • java數(shù)學歸納法非遞歸求斐波那契數(shù)列的方法

    java數(shù)學歸納法非遞歸求斐波那契數(shù)列的方法

    這篇文章主要介紹了java數(shù)學歸納法非遞歸求斐波那契數(shù)列的方法,涉及java非遞歸算法的使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • Java編程二項分布的遞歸和非遞歸實現(xiàn)代碼實例

    Java編程二項分布的遞歸和非遞歸實現(xiàn)代碼實例

    這篇文章主要介紹了Java編程二項分布的遞歸和非遞歸實現(xiàn)代碼實例,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • Mybatis條件if test如何使用枚舉值

    Mybatis條件if test如何使用枚舉值

    這篇文章主要介紹了Mybatis條件if test如何使用枚舉值,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Spring?Boot項目傳參校驗的最佳實踐指南

    Spring?Boot項目傳參校驗的最佳實踐指南

    有參數(shù)傳遞的地方都少不了參數(shù)校驗,在web開發(fā)中前端的參數(shù)校驗是為了用戶體驗,后端的參數(shù)校驗是為了安全,下面這篇文章主要給大家介紹了關于Spring?Boot項目傳參校驗的最佳實踐,需要的朋友可以參考下
    2022-04-04
  • mybatis單元測試過程(無需啟動容器)

    mybatis單元測試過程(無需啟動容器)

    在MyBatis中,單元測試無需啟動容器即可進行,主要涉及Configuration類、Executor接口及其實現(xiàn)類,以及XMLMapperBuilder的作用,Configuration類是配置的承載者,負責初始化并解析配置文件,Executor接口及其實現(xiàn)類
    2024-09-09
  • SpringBoot常用讀取配置文件的3種方法小結

    SpringBoot常用讀取配置文件的3種方法小結

    本文主要介紹了SpringBoot常用讀取配置文件的3種方法小結,主要包括@Value讀取配置文件,@ConfigurationProperties 讀取配置文件和讀取配置文件中的List,具有一定的參考價值,感興趣的可以了解一下
    2023-10-10

最新評論

神木县| 苗栗县| 繁峙县| 沿河| 荥阳市| 黑龙江省| 汕头市| 石城县| 陕西省| 双桥区| 东宁县| 泰安市| 兰西县| 城固县| 东平县| 长武县| 营山县| 定远县| 年辖:市辖区| 宝坻区| 梁平县| 股票| 宁陵县| 木里| 通化县| 颍上县| 和政县| 自治县| 张北县| 尼勒克县| 唐海县| 鄂伦春自治旗| 安庆市| 额尔古纳市| 延长县| 洛阳市| 如东县| 榆林市| 台安县| 怀宁县| 平乐县|