如何讓DI在webapp中工作?到目前爲止,我已經做了以下內容:如何讓DI與Guice和Webapps一起工作?
1)註釋setter方法與@Inject
2)擴展AbstractModule
,這樣它就綁定的接口類的實現類,其制定者在步驟1
3)擴展GuiceContextServletListener
和壓倒getInjector以便它返回Guice.createInjector(new ExtendedAbstractModule())
4)註冊在web.xml
擴展GuiceContextServletListener
作爲監聽
我已驗證在webapp啓動時調用了擴展的GuiceContextServletListener.getInjector()
方法。其setter被註釋的屬性沒有被注入並且仍然是null
。
如何獲取需要注入屬性的對象的實例?你用'new'實例化它嗎? – Daniel
是的我正在使用新的實例化對象。該對象在web.xml中配置的servlet中實例化,而不是通過guice綁定。 – Hokiedood