<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

    最新評論

    閱讀排行榜

    主站蜘蛛池模板: 国产精品高清视亚洲精品| 亚洲免费黄色网址| 又大又硬又粗又黄的视频免费看| 国产免费观看视频| 亚洲精品无码不卡在线播放| 99视频在线精品免费观看6| 亚洲伊人久久大香线蕉结合| 国产精品视频免费一区二区 | 成全高清视频免费观看| 亚洲伊人久久大香线蕉结合| 成人免费看片又大又黄| 老司机午夜在线视频免费观| 久久精品国产亚洲5555| 精品亚洲永久免费精品| 亚洲高清中文字幕综合网| 在线观看免费高清视频| 色吊丝免费观看网站| 亚洲一区AV无码少妇电影☆| 国产自国产自愉自愉免费24区| 久久亚洲精品中文字幕| 九九九精品成人免费视频| 日韩精品无码免费视频| 亚洲三级视频在线| 亚洲区小说区激情区图片区| 亚洲国产熟亚洲女视频| 大学生高清一级毛片免费| 猫咪免费观看人成网站在线| 日韩一区二区免费视频| 亚洲精品无码成人片久久| 国产精品自在自线免费观看| 亚洲AV无码专区国产乱码不卡| 波多野结衣免费视频观看| 中文字幕乱码免费看电影| 亚洲图片校园春色| 免费人妻av无码专区| 99久久99热精品免费观看国产| 亚洲国产精品成人| 精品无码无人网站免费视频 | 久久狠狠躁免费观看| 亚洲综合色一区二区三区| 亚洲精品无码av人在线观看|