中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

山東省疫情防控最新政策seo外包收費(fèi)

山東省疫情防控最新政策,seo外包收費(fèi),手機(jī)網(wǎng)站設(shè)計(jì)圖,怎么刪除wordpress主題Aware 接口的回調(diào)方法是在 Bean 實(shí)例化之后調(diào)用的。具體來說,這些回調(diào)方法是在依賴注入完成后,但在 Bean 完全初始化之前調(diào)用的。這是 Spring 容器管理 Bean 生命周期的一部分 完成了屬性賦值之后,Spring會執(zhí)行一些回調(diào),包括&…

Aware 接口的回調(diào)方法是在 Bean 實(shí)例化之后調(diào)用的。具體來說,這些回調(diào)方法是在依賴注入完成后,但在 Bean 完全初始化之前調(diào)用的。這是 Spring 容器管理 Bean 生命周期的一部分

完成了屬性賦值之后,Spring會執(zhí)行一些回調(diào),包括: 1. BeanNameAware:回傳beanName給bean對象。 2. BeanClassLoaderAware:回傳classLoader給bean對象。 3. BeanFactoryAware:回傳beanFactory

1、BeanNameAware:

  • 回調(diào)目的:告訴 Bean 它自己的名字。
  • 大白話解釋:Spring 會調(diào)用 setBeanName(String name) 方法,把 Bean 的名字告訴給 Bean 本身。這樣,Bean 就知道它在 Spring 容器中的名字是什么。
  • 應(yīng)用場景:如果你的 Bean 需要知道自己在 Spring 容器中的名字,可以實(shí)現(xiàn) BeanNameAware 接口。

2、BeanClassLoaderAware:

  • 回調(diào)目的:告訴 Bean 它的類加載器。
  • 大白話解釋:Spring 會調(diào)用 setBeanClassLoader(ClassLoader classLoader) 方法,把類加載器告訴給 Bean 本身。這樣,Bean 就可以使用這個類加載器來加載類。
  • 應(yīng)用場景:如果你的 Bean 需要動態(tài)加載類,可以實(shí)現(xiàn) BeanClassLoaderAware 接口。

3、BeanFactoryAware:

  • 回調(diào)目的:告訴 Bean 它所在的 BeanFactory。
  • 大白話解釋:Spring 會調(diào)用 setBeanFactory(BeanFactory beanFactory) 方法,把 BeanFactory 的引用告訴給 Bean 本身。這樣,Bean 就可以訪問和操作整個 Spring 容器。
  • 應(yīng)用場景:如果你的 Bean 需要訪問 Spring 容器中的其他 Bean,或者需要執(zhí)行一些與容器相關(guān)的操作,可以實(shí)現(xiàn) BeanFactoryAware 接口。

當(dāng)然Spring中還有很多其它功能的aware接口或者自定義aware接口

具體示例

1. 定義 MyBean 類
首先,定義一個 MyBean 類,實(shí)現(xiàn) BeanNameAware、BeanClassLoaderAware 和 BeanFactoryAware 接口:

import org.springframework.beans.BeansException;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.BeanFactoryAware;
import org.springframework.beans.factory.BeanNameAware;
import org.springframework.beans.factory.BeanClassLoaderAware;public class MyBean implements BeanNameAware, BeanClassLoaderAware, BeanFactoryAware {private String beanName;private ClassLoader classLoader;private BeanFactory beanFactory;@Overridepublic void setBeanName(String name) {this.beanName = name;System.out.println("Bean name is: " + name);}@Overridepublic void setBeanClassLoader(ClassLoader classLoader) {this.classLoader = classLoader;System.out.println("Class loader is: " + classLoader);}@Overridepublic void setBeanFactory(BeanFactory beanFactory) throws BeansException {this.beanFactory = beanFactory;System.out.println("BeanFactory is: " + beanFactory);}public void doSomething() {System.out.println("Doing something...");// 你可以在這里使用 beanName、classLoader 和 beanFactory}
}

2. 定義配置類
接下來,定義一個配置類,使用 @Configuration 和 @Bean 注解來配置 MyBean:

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class AppConfig {@Beanpublic MyBean myBean() {return new MyBean();}
}

3. 啟動 Spring 應(yīng)用

最后,編寫一個主類來啟動 Spring 應(yīng)用,并獲取 MyBean 實(shí)例

import org.springframework.context.annotation.AnnotationConfigApplicationContext;public class Main {public static void main(String[] args) {// 創(chuàng)建 Spring 應(yīng)用上下文AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);// 獲取 MyBean 實(shí)例MyBean myBean = context.getBean(MyBean.class);// 調(diào)用 MyBean 的方法myBean.doSomething();// 關(guān)閉上下文context.close();}
}

運(yùn)行結(jié)果
當(dāng)你運(yùn)行 Main 類時,你會看到類似以下的輸出

解釋
1、MyBean 類:

  • 實(shí)現(xiàn)了 BeanNameAware、BeanClassLoaderAware 和 BeanFactoryAware 接口。
  • 重寫了 setBeanName、setBeanClassLoader 和 setBeanFactory 方法,在這些方法中打印相關(guān)信息。

2、AppConfig 類:

  • 使用 @Configuration 注解標(biāo)記為配置類。
  • 使用 @Bean 注解定義 MyBean 的 Bean。

3、Main 類:

  • 使用 AnnotationConfigApplicationContext 創(chuàng)建 Spring 應(yīng)用上下文,并傳入配置類 AppConfig。
  • 從上下文中獲取 MyBean 實(shí)例,并調(diào)用其 doSomething 方法。
  • 最后關(guān)閉上下文。

通過這種方式,你可以使用純 Java 配置來實(shí)現(xiàn) BeanNameAware、BeanClassLoaderAware 和 BeanFactoryAware 回調(diào)

當(dāng)然還有更多的

ApplicationContextAwareProcessor會在初始化前這個步驟中進(jìn)行其他Aware的回調(diào):
  • i. EnvironmentAware:回傳環(huán)境變量
  • ii. EmbeddedValueResolverAware:回傳占位符解析器
  • iii. ResourceLoaderAware:回傳資源加載器
  • iv. ApplicationEventPublisherAware:回傳事件發(fā)布器
  • v. MessageSourceAware:回傳國際化資源
  • vi. ApplicationStartupAware:回傳應(yīng)用其他監(jiān)聽對象,可忽略
  • vii. ApplicationContextAware:回傳Spring容器ApplicationContext
http://www.risenshineclean.com/news/53157.html

相關(guān)文章:

  • 外貿(mào)工廠 網(wǎng)站建設(shè)百度關(guān)鍵詞規(guī)劃師入口
  • 企業(yè)如何創(chuàng)建網(wǎng)站邢臺網(wǎng)站公司
  • 有沒有網(wǎng)站可以學(xué)做床上用品系統(tǒng)優(yōu)化大師下載
  • 河南seo網(wǎng)站策劃上海站優(yōu)云網(wǎng)絡(luò)科技有限公司
  • 百度官網(wǎng)認(rèn)證網(wǎng)站關(guān)鍵詞歌曲歌詞
  • asp網(wǎng)站編輯教程汕頭seo優(yōu)化項(xiàng)目
  • wordpress 標(biāo)簽手冊關(guān)鍵詞優(yōu)化包年推廣
  • 好看的 網(wǎng)站正在建設(shè)中源碼福州短視頻seo網(wǎng)站
  • 建站排名教育培訓(xùn)網(wǎng)站
  • 網(wǎng)頁網(wǎng)站免費(fèi)佛山快速排名seo
  • 白城網(wǎng)站建設(shè)網(wǎng)站制作公司高端
  • 美武漢有什么網(wǎng)站建設(shè)公司好磁力鏈
  • 狐表做網(wǎng)站360優(yōu)化大師最新版
  • 網(wǎng)站建設(shè)的基本流程包括網(wǎng)絡(luò)營銷ppt怎么做
  • 球類網(wǎng)站如何做宣傳推廣搜索怎么選關(guān)鍵詞
  • html簡單網(wǎng)頁代碼下載廣東網(wǎng)站seo
  • 免費(fèi)做公司電子畫冊的網(wǎng)站怎么優(yōu)化網(wǎng)站
  • wordpress標(biāo)簽自動生成插件下載北京谷歌seo公司
  • 什么網(wǎng)站可以做海報aso優(yōu)化報價
  • 找網(wǎng)站建設(shè)企業(yè)常德seo招聘
  • 做證券考試的網(wǎng)站電商seo是什么
  • 小說網(wǎng)站制作模板網(wǎng)絡(luò)營銷分析報告
  • 大連網(wǎng)站建設(shè)選網(wǎng)龍建網(wǎng)站
  • 做網(wǎng)站開發(fā) 用的最多的語言手機(jī)系統(tǒng)流暢神器
  • 去除wordpress主題底部信息網(wǎng)站seo綜合查詢
  • 建好的網(wǎng)站怎么用橙子建站
  • 營銷型網(wǎng)站建設(shè)的注意事項(xiàng)灰色行業(yè)推廣平臺
  • 如何組建網(wǎng)站開發(fā)團(tuán)隊(duì)亞馬遜alexa
  • php做的網(wǎng)站好么自己搜20條優(yōu)化措施
  • wordpress插件 圖片上傳采集站seo提高收錄