2012-07-22 67 views
0

我想使用MyBatis-Guice DI功能,但我不知道如何開始。Mybatis-Guice bootstrapping幫助需要

我有使用工廠類獲得MyBatis Mappers的經驗,但我根本不知道從哪裏開始Guice。

例如,我寫了下面的代碼,我不知道這是如何得到由吉斯,如果有的話。

public class MyOwnBatisModule { 

    protected void initialize() { 
     Injector injector = Guice.createInjector(new XMLMyBatisModule() { 
      @Override 
      protected void initialize() { 
       setEnvironmentId("sos"); 
       setClassPathResource("sg/java/bus/dao/mybatis-config.xml"); 
      } 
     }); 
    } 
} 

我寫完這些之後,我如何讓Guice引導或加載這個以初始化資源,我可以開始使用我的Mappers?

回答

2

你將不得不使用注射器剛創建以創建實例:

injector.getInstance(MyClass.class)

但是從看你的代碼,我建議你先從一些基本的DI/Guice示例(入門)並觀看Guice主頁上的剪輯。

之後,您可能會使用@Inject來獲取注入需要它們的映射。

+0

謝謝1月我遇到過這個問題,http://www.slideshare.net/simonetripodi/mybatis-googleguice,這是否意味着我接下來要做的只是在我需要的映射器上註釋@Inject ,它會自動注入? – 2012-07-23 00:52:56

+0

是的,但請記住,只有當Guice創建實例(例如通過getInstance())時,該注入纔有效,當您使用「new」自己創建實例時,它不會工作。你看過介紹視頻嗎? – 2012-07-23 10:04:27

+0

嗨,簡,不,我沒有看它,拍我哈哈。我會看,請問你有鏈接嗎? – 2012-07-23 10:06:17