SpringBoot原始碼之自定義Aware介面

2021-10-02 20:48:00 字數 1872 閱讀 8459

自定義乙個myaware介面整合aware介面,並設定乙個setmonkey方法

package com.jun.lee.aware;

import com.jun.lee.ioc.monkey;

import org.springframework.beans.factory.aware;

/** * *

* @author jun lee

* @version 1.0

* @createdate 2020/02/15 16:06

* @see com.jun.lee.aware

*/public inte***ce myaware extends aware

package com.jun.lee.aware;

import com.jun.lee.ioc.monkey;

import lombok.data;

import org.springframework.beans.bean***ception;

import org.springframework.beans.factory.aware;

import org.springframework.beans.factory.config.beanpostprocessor;

import org.springframework.stereotype.component;

/** * *

* @author jun lee

* @version 1.0

* @createdate 2020/02/15 16:07

* @see com.jun.lee.aware

*/@component

@data

@override

public object postprocessbeforeinitialization(object bean, string beanname) throws bean***ception

}return null;

}@override

}}

我們在啟動載入器中去獲取這個例項,看看我們的myaware介面是不是生效了.

package com.jun.lee.startup;

import com.jun.lee.aware.myaware;

import com.jun.lee.ioc.monkey;

import org.springframework.beans.bean***ception;

import org.springframework.core.annotation.order;

import org.springframework.stereotype.component;

/** * @author jun lee

* @version 1.0

* @createdate 2020/02/14 22:14

* @see com.jun.lee.startup

*/@component

@order(1)

myaware

@override

public void setmonkey(monkey monkey)

}

我們執行專案看看結果如何

可以看到我們執行之後,輸出了monkey(name=張三),這說明我們自定義的myaware生效了

monkey(name=張三)

2020-02-15 18:06:06.916 info 14788 --- [

springboot原始碼略讀

springboot的精髓是自動依賴注入。那麼哪些能自動注入呢,開啟spring boot autoconfigure,jar下的spring.factories。可以看到一堆這樣的配置 auto configure org.springframework.boot.autoconfigure.en...

SpringBoot原始碼分析

public class 第乙個引數 resourceloader 資源載入器 第二個引數 primarysources 載入的主要資源類 suppresswarnings public resourceloader resourceloader,class primarysources deduc...

Spring Boot 原始碼分析

1 專案初始化過程 springboot啟動類 springboot的啟動很簡單,如下 public static void main string args this.resourceloader resourceloader initialize sources private void ini...