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

Springboot項目中如何讓非Spring管理的類獲得一個注入的Bean

 更新時間:2023年12月27日 09:58:47   作者:huangyaa729  
這篇文章主要介紹了Springboot項目中如何讓非Spring管理的類獲得一個注入的Bean問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

Springboot讓非Spring管理的類獲得一個注入的Bean

由于業(yè)務需要,項目中集成了mqtt服務,在mqtt連接中需要設置個回調(diào)類,這個回調(diào)類定義為一個普通類,不通過Spring管理,但是在回調(diào)類中又需要引入數(shù)據(jù)庫的操作,

采用通過注解引入的數(shù)據(jù)庫框架類服務,顯然不能通過簡單的new Object() 來進行調(diào)用,因此需要采用一種方式引入已經(jīng)注入的Bean:

通過各種嘗試以及驗證,找到了一種可行的方案

如下所示:

聲明一個自定義的類

定義一個ApplicationContext對象 ,在需要操作的函數(shù)中,通過ApplicationContext對象引入注入的類即可:

public class MyTest{
  private static ApplicationContext applicationContext;

  public static void setApplicationContext(ApplicationContext context) {
    applicationContext = context;
  }
  
   public static void doSomething() {
    RestTemplate _restTemplate = applicationContext.getBean(RestTemplate.class);
    ........
  } 
}

在啟動類中

得到ApplicationContext 對象,然后傳遞到自定義的類中,注意——只能在這個地方傳入,否則無法正確獲取ApplicationContext 對象;

@SpringBootApplication
public class Application{

  public static void main(String[] args) {
    final ApplicationContext applicationContext = 
                     SpringApplication.run(Application.class, args);
    MyTest.setApplicationContext(applicationContext);
  }
  
}

總結

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

相關文章

  • Java解決LocalDateTime傳輸前端為時間的數(shù)組

    Java解決LocalDateTime傳輸前端為時間的數(shù)組

    本文主要介紹了Java解決LocalDateTime傳輸前端為時間的數(shù)組,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-03-03
  • 分析Spring框架之設計與實現(xiàn)資源加載器

    分析Spring框架之設計與實現(xiàn)資源加載器

    Spring框架是由于軟件開發(fā)的復雜性而創(chuàng)建的。然而,Spring的用途不僅僅限于服務器端的開發(fā)。從簡單性、可測試性和松耦合性角度而言,絕大部分Java應用都可以從Spring中受益。今天來分析它的設計與實現(xiàn)資源加載器,從Spring.xml解析和注冊Bean對象
    2021-06-06
  • SpringCloud Finchley+Spring Boot 2.0 集成Consul的方法示例(1.2版本)

    SpringCloud Finchley+Spring Boot 2.0 集成Consul的方法示例(1.2版本)

    這篇文章主要介紹了SpringCloud Finchley+Spring Boot 2.0 集成Consul的方法示例(1.2版本),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-08-08
  • Java Spring ApplicationEvent 代碼示例解析

    Java Spring ApplicationEvent 代碼示例解析

    本文解析了Spring事件機制,涵蓋核心概念(發(fā)布-訂閱/觀察者模式)、代碼實現(xiàn)(事件定義、發(fā)布、監(jiān)聽)及高級應用(異步處理、事務綁定、執(zhí)行順序),對Java Spring ApplicationEvent概念相關知識感興趣的朋友一起看看吧
    2025-06-06
  • Java BufferedImage轉換為MultipartFile方式

    Java BufferedImage轉換為MultipartFile方式

    這篇文章主要介紹了Java BufferedImage轉換為MultipartFile方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • SpringBoot執(zhí)行異步任務Async介紹

    SpringBoot執(zhí)行異步任務Async介紹

    這篇文章主要為大家介紹了SpringBoot執(zhí)行異步任務Async示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • 老生常談java中cookie的使用

    老生常談java中cookie的使用

    下面小編就為大家?guī)硪黄仙U刯ava中cookie的使用。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-12-12
  • Java線程中斷及線程中斷的幾種使用場景小結

    Java線程中斷及線程中斷的幾種使用場景小結

    在并發(fā)編程中,合理使用線程中斷機制可以提高程序的魯棒性和可維護性,本文主要介紹了Java線程中斷及線程中斷的幾種使用場景小結,具有一定的參考價值,感興趣的可以了解一下
    2024-01-01
  • 分布式消息隊列RocketMQ概念詳解

    分布式消息隊列RocketMQ概念詳解

    RocketMQ?是阿里開源的分布式消息中間件,跟其它中間件相比,RocketMQ?的特點是純JAVA實現(xiàn),是一套提供了消息生產(chǎn),存儲,消費全過程API的軟件系統(tǒng),本文詳細介紹了分布式消息隊列RocketMQ概念,需要的朋友可以參考下
    2023-05-05
  • 關于Java8的foreach中使用return/break/continue產(chǎn)生的問題

    關于Java8的foreach中使用return/break/continue產(chǎn)生的問題

    這篇文章主要介紹了關于Java8的foreach()中使用return/break/continue產(chǎn)生的問題,在使用foreach()處理集合時不能使用break和continue這兩個方法,也就是說不能按照普通的for循環(huán)遍歷集合時那樣根據(jù)條件來中止遍歷,需要的朋友可以參考下
    2023-10-10

最新評論

长沙市| 德钦县| 古田县| 东乡| 巴彦县| 伊川县| 临湘市| 钟山县| 津市市| 岢岚县| 静海县| 加查县| 岚皋县| 甘德县| 宁明县| 江西省| 南投市| 化州市| 辉南县| 丹巴县| 高唐县| 江源县| 万源市| 迁安市| 屯昌县| 英吉沙县| 武乡县| 广汉市| 肇源县| 镇雄县| 安泽县| 桂林市| 策勒县| 寻乌县| 兴安县| 芒康县| 天津市| 固阳县| 封丘县| 彝良县| 兴和县|