使用@PrimaryKey时,Android房间无法找到setter构建错误(autoGenerated = true)

时间:2018-05-25 07:47:27

标签: android android-room

我正在尝试在我的应用中实现Room数据库。我创建了一个名为" Word"。

的简单模型类
@Entity(tableName = "word_table")
public class Word {

    @PrimaryKey(autoGenerate = true)
    private int id;

    @NonNull
    private String word;

    public Word(@NonNull String word) {
        this.word = word;
    }

    public int getId() {
        return id;
    }

    public String getWord(){
        return this.word;
    }
}

但是当我尝试构建应用程序时。它说:

  

错误:无法找到字段的setter。       private int id;

所以我尝试为" id"添加一个setter。我喜欢:

public void setId(int id) {
    this.id = id;
}

全班看起来像这样:

@Entity(tableName = "word_table")
public class Word {

    @PrimaryKey(autoGenerate = true)
    private int id;

    @NonNull
    private String word;

    public Word(@NonNull String word) {
        this.word = word;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getWord(){
        return this.word;
    }
}

但它并没有解决问题。那么在房间中使用自动生成的id的正确方法是什么?

0 个答案:

没有答案