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

SpringBoot項目如何將Bean注入到普通類中

 更新時間:2021年11月15日 16:28:46   作者:banmajio  
這篇文章主要介紹了SpringBoot項目如何將Bean注入到普通類中,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

如何將Bean注入到普通類中

Spring管理的類獲得一個注入的Bean方式

@Autowired是一種注解,可以對成員變量、方法和構造函數(shù)進行標注,來完成自動裝配的工作,自動執(zhí)行當前方法,如果方法有參數(shù),會在IOC容器中自動尋找同類型參數(shù)為其傳值。

如Controller中注入Bean可以這么寫:

@RestController
public class TestController {
 @Autowired
 public TestBean bean;// 配置文件bean
}

非Spring管理的類獲得一個注入的Bean方式

上述通過@Autowired注解注入的方式只可以用在Spring管理的類中,而普通類中通過這樣的方式獲得的Bean為null。

可以使用Spring上下文ApplicationContext獲得Bean的方式,將Bean注入到普通類中

普通類中通過ApplicationContext上下文獲得Bean

public class Test{
 //聲明要注入的Bean變量
 private static TestBean bean;
 // 通過applicationContext上下文獲取Bean
 
 public static void setApplicationContext(ApplicationContext applicationContext) {
  bean = applicationContext.getBean(TestBean.class);
 }
}

修改SpringBoot啟動類

將ApplicationContext傳入普通類中

@SpringBootApplication
public class TestrApplication {
 public static void main(String[] args) {
  final ApplicationContext applicationContext = SpringApplication.run(TestApplication.class, args);
  // 將上下文傳入Test類中,用于檢測tcp連接是否正常
  Test.setApplicationContext(applicationContext);
 }
}

這樣一個Spring的Bean就可以注入到普通類中使用了.

在普通類中如何獲取Bean節(jié)點

/*
 * 文件名:SpringContextUtil.java
 * 描述:獲取bean實例工具類
 * 修改人:Wang Chinda
 * 修改時間:2018/10/30
 * 修改內(nèi)容:新增
 */
package com.chinda.utils;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;
/**
 * 獲取bean實例工具類
 * @author Wang Chinda
 * @date 2018/10/30
 * @see
 * @since 1.0
 */
@Component
public class SpringContextUtil implements ApplicationContextAware {
    /**
     * 上下文對象實例
     */
    private static ApplicationContext applicationContext;
    @Override
    public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
        this.applicationContext = applicationContext;
    }
    /**
     * 獲取applicationContext
     *
     * @return
     */
    public static ApplicationContext getApplicationContext() {
        return applicationContext;
    }
    /**
     * 通過name獲取Bean.
     *
     * @param name
     * @return
     */
    public static Object getBean(String name) {
        return getApplicationContext().getBean(name);
    }
    /**
     * 通過class獲取Bean.
     *
     * @param clazz
     * @param <T>
     * @return
     */
    public static <T> T getBean(Class<T> clazz) {
        return getApplicationContext().getBean(clazz);
    }
    /**
     * 通過name以及Class返回指定的Bean
     *
     * @param name
     * @param clazz
     * @param <T>
     * @return
     */
    public static <T> T getBean(String name, Class<T> clazz) {
        return getApplicationContext().getBean(name, clazz);
    }
}

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Java繼承的實現(xiàn)與繼承限制分析

    Java繼承的實現(xiàn)與繼承限制分析

    這篇文章主要介紹了Java繼承的實現(xiàn)與繼承限制,結(jié)合具體實例形式分析了Java繼承的定義、實現(xiàn)以及繼承的相關限制,需要的朋友可以參考下
    2019-01-01
  • Java dom4j創(chuàng)建解析xml文檔過程解析

    Java dom4j創(chuàng)建解析xml文檔過程解析

    這篇文章主要介紹了Java dom4j創(chuàng)建解析xml文檔過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-07-07
  • Java使用組件編寫窗口實現(xiàn)網(wǎng)上文件下載

    Java使用組件編寫窗口實現(xiàn)網(wǎng)上文件下載

    這篇文章主要為大家詳細介紹了Java使用組件編寫窗口實現(xiàn)網(wǎng)上文件下載的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • Java修改eclipse中web項目的server部署路徑問題

    Java修改eclipse中web項目的server部署路徑問題

    這篇文章主要介紹了Java修改eclipse中web項目的server部署路徑,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • spring?boot+vue實現(xiàn)JSAPI微信支付的完整步驟

    spring?boot+vue實現(xiàn)JSAPI微信支付的完整步驟

    JSAPI支付是用戶在微信中打開商戶的H5頁面,商戶在H5頁面通過調(diào)用微信支付提供的JSAPI接口調(diào)起微信支付模塊完成支付,下面這篇文章主要給大家介紹了關于spring?boot+vue實現(xiàn)JSAPI微信支付的相關資料,需要的朋友可以參考下
    2022-05-05
  • Redis Java Lettuce驅(qū)動框架原理解析

    Redis Java Lettuce驅(qū)動框架原理解析

    這篇文章主要介紹了Redis Java Lettuce驅(qū)動框架原理解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-12-12
  • Java實現(xiàn)用戶管理系統(tǒng)

    Java實現(xiàn)用戶管理系統(tǒng)

    這篇文章主要為大家詳細介紹了Java實現(xiàn)用戶管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • 基于spring AOP @Around @Before @After的區(qū)別說明

    基于spring AOP @Around @Before @After的區(qū)別說明

    這篇文章主要介紹了基于spring AOP @Around @Before @After的區(qū)別說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • Spring重試支持Spring Retry的方法

    Spring重試支持Spring Retry的方法

    本篇文章主要介紹了Spring重試支持Spring Retry的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04
  • 如何利用Java使用AOP實現(xiàn)數(shù)據(jù)字典轉(zhuǎn)換

    如何利用Java使用AOP實現(xiàn)數(shù)據(jù)字典轉(zhuǎn)換

    這篇文章主要介紹了如何利用Java使用AOP實現(xiàn)數(shù)據(jù)字典轉(zhuǎn)換,AOP也是我們常說的面向切面編程,AOP在我們開發(fā)過程中應用也比較多,在這里我們就基于AOP來實現(xiàn)一個數(shù)據(jù)字典轉(zhuǎn)換的案例
    2022-06-06

最新評論

安阳县| 宝坻区| 马鞍山市| 铜鼓县| 横山县| 三明市| 兖州市| 贡觉县| 汤原县| 南开区| 农安县| 电白县| 上蔡县| 霍山县| 神池县| 忻城县| 淮北市| 崇左市| 余干县| 贞丰县| 青龙| 潢川县| 买车| 永济市| 东阿县| 舒兰市| 汝城县| 临安市| 绿春县| 百色市| 台安县| 龙口市| 石城县| 龙山县| 乌拉特中旗| 承德县| 南开区| 邛崃市| 临沂市| 西和县| 房山区|