簡體   English   中英

庫中的Spring注釋配置

[英]Spring Annotation Configuration in a library

我制作了幾個使用純注解Spring配置的應用程序。 現在,我想嘗試建立一個庫。

  • 該庫應使用純注解Spring配置。
  • 使用該庫的項目應該能夠在沒有任何特殊Spring配置的情況下使用該庫。 確實,我希望該庫可與Spring和非Spring項目互換使用。 所有Spring配置都應在庫jar中處理。
  • 該庫應在非Web應用程序的項目中可用。
  • 使用該庫的應用程序應該能夠使用new關鍵字實例化庫中的公共類,並解決它們的@Autowired依賴關系。

我不知道該怎么做。 需要某種方式來建立應用程序上下文,並且這似乎是在插入點完成的。 由於庫沒有插入點,我很茫然。

這只是未完成的事情嗎? Spring依賴注入似乎是一個非常有用的工具,如果我不能使用它來構建庫,那將是一個恥辱。

從您編寫的內容來看,您的庫實際上是一組自定義組件,這些組件在內部是一致的,並且通過META-INF類路徑或Maven依賴項定義向其他庫定義了顯式依賴項。

注釋沒有魔術。 批注只是由批注處理器處理的標記,因此,如果沒有執行自動裝配的框架批注處理器,則批注只不過是注釋。 JAXB或JPA批注也是如此。

您的非Spring應用程序將需要實例化一個初始容器,然后根據IoC原則啟動綁定過程。 您的庫之一就是這樣的“啟動”庫,它可以啟動此過程,並具有可以從其他庫jar中讀取bean配置或掃描組件的代碼,以及自動連接來自不同庫的組件。

簡而言之,您將需要某種形式的引導,它本身可以是一個附加的“引導”庫。 您可以使該啟動庫最小化,並且對非Spring應用程序幾乎透明,並提供某種形式的組件查找,但是很難以完全透明的方式進行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM