2017-08-16 52 views
1

一起使用的類,它具有POJO,用於解析/序列化來自遠程服務的json數據結果。它可能有一些GSON的註解當使用Gson時,可以使用Gson使用的POJO重用於與

public class User { 
    @SerializedName(「_id」) 
    @Expose 
    public String id; 
    @SerializedName(「_name」) 
    @Expose 
    public String name; 
    @SerializedName(「_lastName」) 
    @Expose 
    public String lastName; 

    @SerializedName(「_age」) 
    @Expose 
    public Integer age; 

}

但客房使用的類,它可以有自己的註解:

import android.arch.persistence.room.Entity; 
import android.arch.persistence.room.PrimaryKey; 

@Entity 
public class User { 
    public @PrimaryKey String id; 
    public String name; 
    public String lastName; 
    public int age; 
} 

可能這兩個合併成一個與所有的來自兩個庫的註釋(如果存在註釋衝突(希望不是),它必須用長包名解析)?

+0

我不希望任何圖書館的註釋與其他庫的註解干擾。 – CommonsWare

+0

我不認爲你會有這個問題。每個框架處理它自己的註釋類並處理其中的元數據。 –

+0

我不指望他們衝突。你有沒有嘗試過? –

回答

1

它會工作,但可能會在未來導致一些問題,因此不推薦用於乾淨的軟件設計。看到這個講話吧:Marko Miloš: Clean architecture on Android

正如指出的,你應該使用不同的實體爲你的數據庫和webresults/JSON和它們之間的轉換。

+0

他推薦什麼?我們應該複製pojo類嗎? – user6650650