兩springboot項目宿主項目引入另一個項目(jar)的相關問題

有兩個項目A、B,都是springboot項目,A項目打包後被B引用(B通過maven座標引用A)

配置B項目爲啓動時,將A中的controller、aspect、filter、springinterceptor等初始化(就是啓動類@ComponentScan增加jar包裏的類的路徑)

當訪問 /user/test 時(屬於本項目),會不會被 aspect、filter、springinterceptor 攔截? 會的

能訪問 /test 嗎? (這是A項目中的controller),能的,如果能訪問,會被 aspect、filter、springinterceptor 攔截嗎? 會的

  • 補充其他的測試點
    如果B項目配置了掃描jar包(A項目)中的bean並進行實例化,假設jar包中的某個bean出錯,會影響到本項目嗎?
    是的,會導致本項目啓動不了。可以排除掉jar包中實例化出錯的bean,排除掉後宿主項目就可啓動

  • 配置覆蓋的問題
    假設B項目引入的jar包(A項目)的某個bean讀取到自己的配置的值是1(讀取其自己的application.properties),宿主項目引入它,
    宿主項目需要提供配置嗎?
    需要的。雖然jar包被打出來的時候已經包含了application.properties文件,但宿主項目讀取不了jar包中的該文件

  • 啓動B項目,則A項目的controller被實例化,A項目中的controller方法能被訪問嗎? 可以的

  • B項目中的攔截器,能攔截A項目裏的controller嗎?能!

(實際上如果在宿主項目B啓動時若掃描A項目,A項目產生的bean,和在B項目直接寫這些bean,是沒什麼兩樣的)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章