<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    (翻譯)JavaEE6規范 CDI教程第二部分

    (譯)JavaEE6規范 CDI教程第二部分

    kuuyee  |  2011-06-11  |  JEE   CDI  

    本部分講述@Inject@Produces

    使用@Inject注入構造器參數和變量域

    你能夠注入變量域、構造器參數和setter方法(或者任何真實的方法)

    下面是變量域注入的例子:

    // AutomatedTellerMachineImpl.transport 使用@Inject來注入變量域transport
    ...
    public class AutomatedTellerMachineImpl implements AutomatedTellerMachine {
    @Inject
    private ATMTransport transport;

    Example 2. AutomatedTellerMachineImpl.transport 使@Inject
    ...
    public class AutomatedTellerMachineImpl implements AutomatedTellerMachine {
    @Inject
    public AutomatedTellerMachineImpl(ATMTransport transport) {
    this.transport = transport;
    }

    這種靈活性讓你創建的類能夠容易的單元測試。

    使用簡單@Produces

    如果你創建的對象可能很復雜,這時候你可以委托一個工廠類來創建實例,而不是依賴于構造器。這種情況在CDI中你可以在你的工廠類中使用@Produces注解,例子如下:

    下面是變量域注入的例子:

    //TransportFactory.createTransport 使用@Produces定義一個工廠方法 
    package org.cdi.advocacy;

    import javax.enterprise.inject.Produces;
    public class TransportFactory {
    @Produces ATMTransport createTransport() {
    System.out.println("ATMTransport created with producer");
    return new StandardAtmTransport();
    }
    }

    工廠方法能夠使用限定詞就像類描述一樣。在這個例子中我們沒有使用限定詞。AutomatedTellerMachineImpl不需要指定任何特定的限定詞。下面例子的AutomatedTellerMachineImpl接收了一個簡單生產者。

    //AutomatedTellerMachineImpl.transport 使用@Inject來注入構造器參數 

    import javax.inject.Inject;
    import javax.inject.Named;
    @Named("atm")
    public class AutomatedTellerMachineImpl implements AutomatedTellerMachine {
    @Inject
    private ATMTransport transport;
    ...

    運行AtmMain來查看輸出,看看是否和你的理解一致。 Output

    ATMTransport created with producer deposit called communicating with bank via Standard transport

    待續..

    2011-06-11

    posted on 2011-06-17 11:10 kuuyee 閱讀(2094) 評論(0)  編輯  收藏 所屬分類: CDIJEE

    導航

    <2011年6月>
    2930311234
    567891011
    12131415161718
    19202122232425
    262728293012
    3456789

    統計

    隨筆分類(139)

    Linux內核

    搜索

    •  

    積分與排名

    • 積分 - 319355
    • 排名 - 177

    最新評論

    閱讀排行榜

    主站蜘蛛池模板: 朝桐光亚洲专区在线中文字幕 | 午夜一级毛片免费视频| 久久亚洲国产精品一区二区| 福利免费在线观看| 久久久久亚洲AV成人网| 成人免费网站视频www| 亚洲熟伦熟女新五十路熟妇| 无遮挡国产高潮视频免费观看| 亚洲第一永久AV网站久久精品男人的天堂AV| 亚洲乱码日产精品一二三| 午夜视频在线在免费| 香港经典a毛片免费观看看| 亚洲国产成人五月综合网| av电影在线免费看| 亚洲大尺度无码无码专区| 日韩午夜理论免费TV影院| 亚洲国产成AV人天堂无码| 免费高清资源黄网站在线观看| 精品在线免费视频| 国产午夜亚洲不卡| 久久这里只精品国产免费10| 亚洲成人福利在线观看| 国内一级一级毛片a免费| 未满十八私人高清免费影院| 亚洲一区AV无码少妇电影☆| 最近最好最新2019中文字幕免费| 亚洲1234区乱码| 免费h黄肉动漫在线观看| 久久精品成人免费网站| 亚洲一区二区三区播放在线| 免费人成网站在线播放| 免费看成人AA片无码视频吃奶| 亚洲天堂中文字幕在线观看| 日本v片免费一区二区三区| 香蕉免费一级视频在线观看| 亚洲综合久久1区2区3区| 四虎AV永久在线精品免费观看| 精品视频在线免费观看| 亚洲AV无码之国产精品| 亚洲AV综合色区无码另类小说| 精品免费国产一区二区|