簡體   English   中英

了解依賴注入-Play Java

[英]Understanding Dependency Injection - Play Java

我正在嘗試了解play框架的依賴注入工作流。

我有以下DI代碼,如果在å控制器中編寫,則可以很好地工作,但是在單獨的類中編寫時,注入配置和mailerClient不會實例化屬性。

DI是否僅在Java中的Play框架控制器中有效?

我的課程無法正常工作:

public class EmailConfig {

    @Inject MailerClient mailerClient;

    @Inject Configuration configuration;


    /**
     * 
     */
    public EmailConfig() {
        // TODO Auto-generated constructor stub
    }

    public void sendEmail(String subjectConfigName, String toConfigName, String text, String from){
        Email email = new Email();
        email
          .setSubject(this.configuration.getString(subjectConfigName))
          .setFrom(from)
          .addTo(this.configuration.getString(toConfigName))
          .setBodyText(text);

        this.mailerClient.send(email);
    }

}

歡迎任何輸入。 謝謝。

控制器是自動注入的,因此您可以簡單地使用@Inject從其注入依賴項,而分離的類既不是自動的,也不是任何自定義綁定的 因此,應該通過使用Play.current().injector() (對於Play 2.5 )顯式調用注射器來進行Play.current().injector() 試試這個:

private Configuration configuration = Play.current().injector().instanceOf(Configuration.class);

暫無
暫無

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

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