2016-11-01 48 views
1

我有一個代表與像名稱的一些屬性,ADRESS等 客戶的Java類和我有屬性:BSON對象ID(嗎啡)表示項目

@Id 
@Property("_id") 
private ObjectId id; 

客戶將取來自mongoDB。一切都很好,所有的屬性都被填滿了。 後來我嘗試通過REST傳輸數據到angular2客戶 我有客戶在打字稿一個客戶表示

export class Customer { 
    public id: string <--- 

REST調用映射裏

.map((response: Response) => <Customer> response.json()) 

什麼,我需要放在這裏,這該屬性將被映射,並且我可以在角度客戶端中使用它。 我試圖通過npm安裝bson-objectid,但我不知道如何讓它映射id屬性。所有其他人工作正常。

+0

btw。如果該信息很重要,我使用moxy從類創建JSON, –

回答

0

找到解決方案! 創建

public YourAdapterName extends XMLAdapter<String, ObjectID> { 
    @Override 
    public String marshal(ObjectId v) throws Exception { 
     return v.toString(); 
    } 

    @Override 
    public ObjectId unmarshal(String v) throws Exception { 
     return new ObjectId(v); 
    } 
} 

該適配器返回對象ID的字符串表示,我可以在打字稿使用

id: string