带有Gluon Ignite和Dagger的JavaFX中的依赖注入
依賴注入抽象框架Gluon Ignite在幾個流行的依賴注入框架(例如Spring,Dagger和Guice)上創建了一個通用抽象。
目前,Gluon 頁面僅包含一個示例,該示例使用Gluon Ignite和Google Guice作為依賴注入框架,我想嘗試使用Dagger代替它,因為它的目標是比其他依賴注入框架更簡約和更快,這對于功能較弱的功能非常有趣移動和嵌入式等設備。 除此之外,它是Google Guice的開發人員發明的,但是使用注入方法的方式較少。
在第一步中,您必須將dagger依賴項添加到您的maven pom(或gradle構建文件)中:
之后,執行mvn clean并安裝或右鍵單擊并選擇:“ reload pom”和“ clean and build”。 現在,您可以通過創建一個新字段開始將其集成到JavaFX主應用程序中:
DaggerContext類帶有以前添加的maven依賴項形式。 它的實例化將JavaFX Main類(this)作為第一個參數,將DaggerModule作為第二個參數。 必須手動創建此模塊:
創建DaggerModules時,必須使用@Module注釋對Module類進行注釋,并且還必須注入JavaFX Main類(在本示例中為MainApp.class)。
如果還想注入FXMLLoader對象,則必須創建一個帶有@Provices注釋的方法,該方法返回FXMLLoader實例。
在注入其他對象的情況下,有兩種注入方法。 您可以向dagger模塊添加其他provider方法,例如:
或者,您可以在SampleController類中創建一個標準的無參數構造函數,并使用@Inject進行注釋,例如:
如果您不執行此步驟之一,則JavaFX Main類不會編譯,因為Dagger使用生成的代碼來注入相應的類,而不是像其他Dependency Frameworks那樣大量使用反射。
鏈接和進一步閱讀
Gluon Ignite提供了一種非常好的方法,可以在JavaFX應用程序中集成不同的Dependency Framework。 除此之外,使用Gluon Ignite更改相應的DI真的很容易。 試試看!
翻譯自: https://www.javacodegeeks.com/2016/01/dependency-injection-javafx-gluon-ignite-dagger.html
總結
以上是生活随笔為你收集整理的带有Gluon Ignite和Dagger的JavaFX中的依赖注入的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux给硬盘分区命令(linux给硬
- 下一篇: java11+osgi_错误学习:Jav