Android Studio:如何让房间数据库自动生成记录 ID?
Android Studio: How do i let the room database autogenerate ID for records?
我把它作为 class 我想让 Room 自动生成 ID 的地方。
@Entity(tableName = "mitglieder_table")
public class Mitglieder {
@PrimaryKey(autoGenerate = true)
private int id;
@ColumnInfo(name = "Vorname")
private String vorname;
@ColumnInfo(name = "Nachname")
private String nachname;
public String getVorname() {
return vorname;
}
public void setVorname(String vorname) {
this.vorname = vorname;
}
public String getNachname() {
return nachname;
}
public void setNachname(String nachname) {
this.nachname = nachname;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public Mitglieder(String vorname, String nachname) {
this.vorname = vorname;
this.nachname = nachname;
}
}
private int id 仅用于 getter 和 setter。
这足以自动生成 ID 还是我必须在其他 classes 中提及它?我必须在构造函数中包含 id 吗?
感谢大家的帮助。
这就足够了,ID 将自动生成,您不必将其包含在构造函数中。如果将来你想使用任何其他构造函数,你可以声明它并用 @Ignore
注释它,Room 将忽略它。
我把它作为 class 我想让 Room 自动生成 ID 的地方。
@Entity(tableName = "mitglieder_table")
public class Mitglieder {
@PrimaryKey(autoGenerate = true)
private int id;
@ColumnInfo(name = "Vorname")
private String vorname;
@ColumnInfo(name = "Nachname")
private String nachname;
public String getVorname() {
return vorname;
}
public void setVorname(String vorname) {
this.vorname = vorname;
}
public String getNachname() {
return nachname;
}
public void setNachname(String nachname) {
this.nachname = nachname;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public Mitglieder(String vorname, String nachname) {
this.vorname = vorname;
this.nachname = nachname;
}
}
private int id 仅用于 getter 和 setter。
这足以自动生成 ID 还是我必须在其他 classes 中提及它?我必须在构造函数中包含 id 吗?
感谢大家的帮助。
这就足够了,ID 将自动生成,您不必将其包含在构造函数中。如果将来你想使用任何其他构造函数,你可以声明它并用 @Ignore
注释它,Room 将忽略它。