gpt4 book ai didi

Android Room - 自动生成主键

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:06:06 24 4
gpt4 key购买 nike

我遇到一个问题,我无法找到有关 Room for Android 和自动生成主键的任何文档。

我有一个看起来像这样的实体类:

@Entity
public class Preference {

@PrimaryKey(autoGenerate = true)
private int id;

public void setId(int id) {

this.id = id;

}

}

当我手动设置 id 时,这工作正常,但当我没有设置主键时,我收到关于主键为 null 的错误。查看自动生成的文件,我看不到它会自动递增主键的任何地方。

所以我想我的问题是:您可以使用 setter 自动生成私有(private)成员的主键,还是我需要在 setter 中手动自动生成我的 key ?

最佳答案

好的,所以这段代码不会生成 id 成员,因为成员为 null 我必须将它设置为 Integer 对象,在这种情况下,当成员等于 null 时,它会自动生成一个新的 id,或者,我需要在初始化对象时将其设置为等于 0,这将执行相同的操作。

我已将其设置为整数,完美解决了我的问题。

@Entity
public class Preference {

@PrimaryKey(autoGenerate = true)
private Integer id;

public void setId(Integer id) {

this.id = id;

}

}

关于Android Room - 自动生成主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46112893/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com