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

Java跨模塊調(diào)用方式

 更新時間:2024年08月27日 09:26:43   作者:animatelife  
這篇文章主要介紹了Java跨模塊調(diào)用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

Java常見的調(diào)用其他類或包的方法

  • Spring IoC
  • SPI
  • Listener/Callback
  • EventBus(類比Guava的事件總線)

Spring IoC

  • 將所有類的實例的生成和管理都交由第三方,調(diào)用方從第三方拿到被調(diào)用方的實例,從而實現(xiàn)調(diào)用

SPI

  • SPI即Service Provider Interface,調(diào)用方只有包含該方法的接口,需要調(diào)用方自己將獲取到的接口實現(xiàn)類實例注入到容器中,再從容器中取出調(diào)用
  • 使用SPI的示例:JDK自帶的ServiceLoader.loader、Dubbo等

Listener/Callback

  • Listener是一個集合,子模塊A將要使用的方法所在接口的實例放在這個集合中,子模塊B將這些接口的實現(xiàn)類塞進(jìn)這個集合中,A要使用的時候就會看這個Listener集合具體哪些接口有實現(xiàn),再通過接口的方式去調(diào)用
  • 使用Listener/Callback的示例:常見的各種GUI、事件處理

EventBus

  • 調(diào)用方通過總線去調(diào)用被調(diào)用方,調(diào)用方與被調(diào)用方使用同一個總線對象,調(diào)用方向總線發(fā)送某類型的事件對象,此時被調(diào)用方在總線注冊自己的實例同時告訴總線自己訂閱的事件類型,通過相同事件類型實現(xiàn)了調(diào)用方與被調(diào)用方之間的調(diào)用關(guān)系
  • 調(diào)用方與被調(diào)用方之間的數(shù)據(jù)傳輸,將需要傳輸?shù)臄?shù)據(jù)作為某類型的事件對象的成員屬性,在實現(xiàn)調(diào)用關(guān)系的同時,數(shù)據(jù)也得以傳輸
  • 使用EventBus的示例:Guava的事件總線

Java兩個模塊之間調(diào)用service注入問題

遇到上述問題需要加入以下語句

@SpringBootApplication(scanBasePackages = {“com.heisenberg.weather.pro”,“com.heisenberg.authmgr”})
@MapperScan(basePackages = {“com.heisenberg.weather_pro.mapper”,“com.heisenberg.authmgr.dao”})

需要在調(diào)用別的模塊的主程序上加入scanBasePackages 范圍,要不然程序不知道你引用的是誰,并且要掃描創(chuàng)建的實體類的位置basePackages 

否則出現(xiàn)以下情況:

No qualifying bean of type ‘com.zxq.api.dao.UserDao’ available: expected at least …

總結(jié)

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

相關(guān)文章

  • Java實現(xiàn)簡單點(diǎn)餐系統(tǒng)

    Java實現(xiàn)簡單點(diǎn)餐系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了Java實現(xiàn)簡單點(diǎn)餐系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • HttpMessageConverter報文信息轉(zhuǎn)換器的深入講解

    HttpMessageConverter報文信息轉(zhuǎn)換器的深入講解

    在Spring中內(nèi)置了大量的HttpMessageConverter,通過請求頭信息中的MIME類型,選擇相應(yīng)的HttpMessageConverter,這篇文章主要給大家介紹了關(guān)于HttpMessageConverter報文信息轉(zhuǎn)換器的相關(guān)資料,需要的朋友可以參考下
    2022-01-01
  • Java?講解兩種找二叉樹的最近公共祖先的方法

    Java?講解兩種找二叉樹的最近公共祖先的方法

    樹是一種非線性的數(shù)據(jù)結(jié)構(gòu),它是由n(n>=0)個有限結(jié)點(diǎn)組成一個具有層次關(guān)系的集合,這篇文章主要給大家介紹了關(guān)于Java求解二叉樹的最近公共祖先的相關(guān)資料,需要的朋友可以參考下
    2022-04-04
  • 實例解決Java異常之OutOfMemoryError的問題

    實例解決Java異常之OutOfMemoryError的問題

    在本篇文章中,我們給大家分享了關(guān)于解決Java異常之OutOfMemoryError的問題的方法,有此需要的朋友們學(xué)習(xí)下。
    2019-02-02
  • IntelliJ IDEA 創(chuàng)建spring boot 的Hello World 項目(圖解)

    IntelliJ IDEA 創(chuàng)建spring boot 的Hello World 項目(圖解)

    這篇文章主要介紹了IntelliJ IDEA 創(chuàng)建spring boot 的Hello World 項目的步驟詳解,需要的朋友可以參考下
    2018-01-01
  • Java黑科技:replace首個替換一秒搞定

    Java黑科技:replace首個替換一秒搞定

    要實現(xiàn)只替換第一個匹配項,可以使用Java中的String類的replaceFirst方法,該方法接受兩個參數(shù),第一個參數(shù)是要替換的字符串或正則表達(dá)式,第二個參數(shù)是替換后的字符串,需要的朋友可以參考下
    2023-10-10
  • Spring-cloud 注冊服務(wù)提供者搭建方法

    Spring-cloud 注冊服務(wù)提供者搭建方法

    本篇文章主要介紹了Spring-cloud 注冊服務(wù)提供者搭建方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04
  • SpringBoot @Value注解支持配置自動刷新能力擴(kuò)展方式

    SpringBoot @Value注解支持配置自動刷新能力擴(kuò)展方式

    本文介紹了如何通過自定義注解和BeanPostProcessor實現(xiàn)SpringBoot中@Value注解的配置自動刷新能力,主要步驟包括:定義一個支持動態(tài)刷新的注解,實現(xiàn)配置的動態(tài)變更,以及通過BeanPostProcessor掃描并刷新使用@Value注解的變量
    2024-12-12
  • 解決Maven項目idea找不到本地倉庫jar包問題以及使用mvn install:install-file

    解決Maven項目idea找不到本地倉庫jar包問題以及使用mvn install:install-file

    這篇文章主要介紹了解決Maven項目idea找不到本地倉庫jar包問題以及使用mvn install:install-file,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • javaweb分頁原理詳解

    javaweb分頁原理詳解

    這篇文章主要為大家詳細(xì)介紹了javaweb分頁的原理,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-04-04

最新評論

昭通市| 务川| 报价| 津市市| 木兰县| 洪江市| 临朐县| 巫溪县| 伊宁市| 天祝| 连云港市| 宜良县| 徐闻县| 洛宁县| 阿拉善右旗| 义马市| 庄河市| 类乌齐县| 新巴尔虎右旗| 万全县| 手游| 乐都县| 黄平县| 夏津县| 大余县| 陵川县| 黔东| 商城县| 晋中市| 崇左市| 梨树县| 香港 | 泰州市| 津南区| 西盟| 兰溪市| 城市| 泰兴市| 宜章县| 兴和县| 易门县|