成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

SpringBoot中Bean定義方是如何調(diào)用-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!

創(chuàng)新互聯(lián)專注于鎮(zhèn)雄企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè),商城網(wǎng)站開發(fā)。鎮(zhèn)雄網(wǎng)站建設(shè)公司,為鎮(zhèn)雄等地區(qū)提供建站服務(wù)。全流程按需求定制開發(fā),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

這篇文章將為大家詳細(xì)講解有關(guān)Spring Boot中Bean定義方是如何調(diào)用,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

我們知道如果我們要在一個(gè)類使用spring提供的bean對(duì)象,我們需要把這個(gè)類注入到spring容器中,交給spring容器進(jìn)行管理,但是在實(shí)際當(dāng)中,我們往往會(huì)碰到在一個(gè)普通的Java類中,想直接使用spring提供的其他對(duì)象或者說有一些不需要交給spring管理,但是需要用到spring里的一些對(duì)象。如果這是spring框架的獨(dú)立應(yīng)用程序,我們通過

ApplicationContextac=newFileSystemXmlApplicationContext("applicationContext.xml");
ac.getBean("beanId");

這樣的方式就可以很輕易的獲取我們所需要的對(duì)象。

但是往往我們所做的都是WebApplication,這時(shí)我們啟動(dòng)spring容器是通過在web.xml文件中配置,這樣就不適合使用上面的方式在普通類去獲取對(duì)象了,因?yàn)檫@樣做就相當(dāng)于加載了兩次spring容器,而我們想是否可以通過在啟動(dòng)web服務(wù)器的時(shí)候,就把Application放在某一個(gè)類中,我們通過這個(gè)類在獲取,這樣就可以在普通類獲取springbean對(duì)象了,讓我們接著往下看

下面介紹在SpringBoot中是如何使用的

1.在Spring Boot可以掃描的包下

寫的工具類為SpringUtil,實(shí)現(xiàn)ApplicationContextAware接口,并加入Component注解,讓spring掃描到該bean

springutil:

package me.shijunjie.util;

import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;

@Component
public class SpringUtil implements ApplicationContextAware {

  private static ApplicationContext applicationContext;

  @Override
  public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
    if(SpringUtil.applicationContext == null) {
      SpringUtil.applicationContext = applicationContext;
    }
    System.out.println("---------------------------------------------------------------------");

    System.out.println("---------------------------------------------------------------------");

    System.out.println("---------------me.shijunjie.util.SpringUtil------------------------------------------------------");

    System.out.println("========ApplicationContext配置成功,在普通類可以通過調(diào)用SpringUtils.getAppContext()獲取applicationContext對(duì)象,applicationContext="+SpringUtil.applicationContext+"========");

    System.out.println("---------------------------------------------------------------------");
  }

  //獲取applicationContext
  public static ApplicationContext getApplicationContext() {
    return applicationContext;
  }

  //通過name獲取 Bean.
  public static Object getBean(String name){
    return getApplicationContext().getBean(name);
  }

  //通過class獲取Bean.
  public static <T> T getBean(Class<T> clazz){
    return getApplicationContext().getBean(clazz);
  }

  //通過name,以及Clazz返回指定的Bean
  public static <T> T getBean(String name,Class<T> clazz){
    return getApplicationContext().getBean(name, clazz);
  }
}

分享題目:SpringBoot中Bean定義方是如何調(diào)用-創(chuàng)新互聯(lián)
文章鏈接:http://jinyejixie.com/article42/jsehc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、網(wǎng)站建設(shè)、App設(shè)計(jì)用戶體驗(yàn)、營(yíng)銷型網(wǎng)站建設(shè)網(wǎng)站導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司
福安市| 祁阳县| 磐安县| 稷山县| 响水县| 靖宇县| 武邑县| 临潭县| 石棉县| 宜宾市| 方城县| 财经| 杨浦区| 财经| 灵璧县| 保定市| 登封市| 平凉市| 天镇县| 雷州市| 会泽县| 行唐县| 新昌县| 宁明县| 日喀则市| 丰镇市| 神农架林区| 盖州市| 靖江市| 林口县| 许昌市| 义马市| 罗源县| 阳新县| 永修县| 嵊泗县| 手机| 略阳县| 陆丰市| 南康市| 塔河县|