2013-04-30 29 views
2

的不同版本我有一個產生SimpleDateFromat對象JEE6簡單製作類:CDI監製(S)同一類

public class myProducer { 

    @Produces public SimpleDateFormat produceASimpleDateFormat(final InjectionPoint injectionPoint) 
    { 
     return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
    } 
} 

我想要麼:

  1. 創建一個新的製作人,不知何故能夠在課堂上口授什麼DateFormat注入哪裏或...
  2. 編輯我現有的生產者基於傳遞的參數產生不同的SimpleDateFormat。

我應該如何實現它?

回答

3

聽起來像用於限定符。

您可以

@Produces 
@TypeA 
public SimpleDateFormat produceTypeAFormat() { 
    return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
} 

@Produces 
@TypeB 
public SimpleDateFormat produceTypeBFormat() { 
    return new SimpleDateFormat("MM-dd-yyyy HH:mm:ss"); 
} 

或者更多的東西動態,你讀入的噴射點讀預選賽W/A的含量,如@Format("yyyy-MM-dd HH:mm:ss")在那裏你可以閱讀有關injectionpoint預選賽。