私は、次のエンティティあいまいなフィールドのgetter ...ルームの永続化ライブラリ
public class User {
@PrimaryKey
private final long id;
private String _id;
private String userName;
private String email;
}
を持っている。しかし、私は次のエラーを取得します。私が直接mongodb
データベースにフックアップnode.js
APIからの応答を翻訳することができるよう
Error:(18, 20) error: Ambiguous getter for Field(element=_id, name=_id, type=java.lang.String, affinity=TEXT, columnName=_id, parent=null, indexed=false). All of the following match: getId, get_id. You can @Ignore the ones that you don't want to match.
_id
フィールドが含まれています。
あなたのクラスリストが完成すれば、その部屋は '_'プレフィックスだけが異なる同じベース名のフィールドを好まないと思われます。フィールドを別の名前(例えば、 'mongodb_id')にするために、JSON側で、Gsonを使って' @ SerializedName'のように何かできますか?また、あなたのクラスリストは完成していますか、現在のリストには表示されないゲッターメソッドがありますか? – CommonsWare
私はAPIからの応答をいつ取得するのですか?すべての_idフィールドを自動的にmongodb_idにシリアル化しますか? –
はい、私はそれが可能かどうか尋ねています。 WebサービスクライアントAPIに何を使用しているのか分かりません。 GsonのようにAndroid上で動作するJSONパーサーの中には、@ SerializedNameのようなアノテーションをサポートしているため、JSONの名前とJavaのフィールド名が異なる場合があります。 – CommonsWare