亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Springboot3自定義starter業(yè)務代碼

 更新時間:2025年05月17日 10:47:39   作者:z542968z  
在Spring?Boot中,starter是一種特殊的依賴,它可以幫助開發(fā)人員快速引入和配置某個特定的功能模塊,這篇文章給大家介紹Springboot3自定義starter業(yè)務代碼的相關知識,感興趣的朋友跟隨小編一起看看吧

場景:抽取聊天機器人場景,它可以打招呼。 效果:任何項目導入此 starter
都具有打招呼功能,并且問候語中的人名需要可以在配置文件中修改。

創(chuàng)建自定義 starter 項目,引入 spring-boot-starter 基礎依賴。

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

編寫模塊功能,引入模塊所有需要的依賴。編寫 xxxAutoConfiguration 自動配置類,幫其他項目導入這個模塊需要的所有組件。編寫配置文件 META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports指定啟動需要加載的自動配置。其他項目引入即可使用

業(yè)務代碼

@Service
public class RobotService {
    @Autowired
    RobotProperties robotProperties;
    public String sayHello(){
        return "hello"+robotProperties.getName()+":"+robotProperties.getAge()+"郵箱"+robotProperties.getEmail();
    }
}

寫下面代碼為了進行屬性綁定,配置文件(application.properties)配了什么屬性項這個類里面都可以直接進行綁定關聯(lián)(在配置文件中寫的數(shù)據(jù)通過這個配置文件,在業(yè)務代碼中引入RobotProperties robotProperties并進行自動注入,就會通過這個來獲取配置文件中的屬性)

@ConfigurationProperties(prefix = "robot")
@Component
@Data
public class RobotProperties {
    private String name;
    private String age;
    private String email;
}
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>

基本抽取

創(chuàng)建starter項?,把公共代碼需要的所有依賴導? 把公共代碼復制進來

不選場景

引入需要的web包

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <optional>true</optional>
</dependency>

刪除主程序類

在新項目中導入該starter

??寫?個 RobotAutoConfiguration ,給容器中導?這個場景需要的所有組件
為什么這些組件默認不會掃描進去?
starter所在的包和 引?它的項?的主程序所在的包不是??層級

別?引?這個 starter ,直接導?這個 RobotAutoConfiguration ,就能把這個場景的組件導?進來 使用@EnableXxx機制

完全自動配置

  • 依賴SpringBoot的SPI機制
  • META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
    ?件中編寫好我們?動配置類的全類名即可
  • 項?啟動,?動加載我們的?動配置類

到此這篇關于Springboot3自定義starter業(yè)務代碼的文章就介紹到這了,更多相關Springboot3自定義starter內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • springboot2啟動時執(zhí)行,初始化(或定時任務)servletContext問題

    springboot2啟動時執(zhí)行,初始化(或定時任務)servletContext問題

    這篇文章主要介紹了springboot2啟動時執(zhí)行,初始化(或定時任務)servletContext問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • Java調(diào)度線程池ScheduledThreadPoolExecutor不執(zhí)行問題分析

    Java調(diào)度線程池ScheduledThreadPoolExecutor不執(zhí)行問題分析

    最近項目上反饋某個重要的定時任務突然不執(zhí)行了,很頭疼,開發(fā)環(huán)境和測試環(huán)境都沒有出現(xiàn)過這個問題。定時任務采用的是ScheduledThreadPoolExecutor,后來一看代碼發(fā)現(xiàn)踩了一個大坑。本文就來和大家聊聊這次的踩坑記錄與解決方法,需要的可以參考一下
    2023-03-03
  • SpringBoot中配置Web靜態(tài)資源路徑的方法

    SpringBoot中配置Web靜態(tài)資源路徑的方法

    這篇文章主要介紹了SpringBoot中配置Web靜態(tài)資源路徑的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • springboot+redis自定義注解實現(xiàn)發(fā)布訂閱的實現(xiàn)代碼

    springboot+redis自定義注解實現(xiàn)發(fā)布訂閱的實現(xiàn)代碼

    在Redis中客戶端可以通過訂閱特定的頻道來接收發(fā)送至該頻道的消息,本文主要介紹了springboot+redis自定義注解實現(xiàn)發(fā)布訂閱,具有一定的參考價值,感興趣的可以了解一下
    2023-08-08
  • 詳解Servlet之過濾器(Filter)

    詳解Servlet之過濾器(Filter)

    本篇文章主要介紹了Servlet——過濾器(Filter),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • java用list集合存儲學生信息并算出成績平均值操作

    java用list集合存儲學生信息并算出成績平均值操作

    這篇文章主要介紹了java用list集合存儲學生信息并算出成績平均值操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • Lombok @Slf4j log對象沒有info等方法不可用問題及解決

    Lombok @Slf4j log對象沒有info等方法不可用問題及解決

    本文主要介紹了如何解決Spring Boot項目中的日志依賴沖突問題,以及如何使用Lombok和SLF4J進行日志記錄,Lombok通過生成Logger對象簡化了日志記錄,而SLF4J提供了一個統(tǒng)一的日志接口,允許開發(fā)者在運行時選擇不同的日志實現(xiàn)
    2024-12-12
  • Java圖形化編程中的鍵盤事件設計簡介

    Java圖形化編程中的鍵盤事件設計簡介

    這篇文章主要介紹了Java圖形化編程中的鍵盤事件設計,是Java的GUI編程當中的基礎部分,需要的朋友可以參考下
    2015-10-10
  • Java如何處理json字符串value多余雙引號

    Java如何處理json字符串value多余雙引號

    這篇文章主要介紹了Java如何處理json字符串value多余雙引號,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • 用SpringMVC編寫一個HelloWorld的詳細過程

    用SpringMVC編寫一個HelloWorld的詳細過程

    SpringMVC是Spring的一個后續(xù)產(chǎn)品,是Spring的一個子項目<BR>SpringMVC?是?Spring?為表述層開發(fā)提供的一整套完備的解決方案,本文我們將用SpringMVC編寫一個HelloWorld,文中有詳細的編寫過程,需要的朋友可以參考下
    2023-08-08

最新評論