Android Studio 无法识别 setter 和 getter
Android Studio not recognizing setter and getter
我一直在尝试使用 Room 从 SQLite 数据库中读取数据,但它一直给我错误提示,即使在我使用之后也无法找到数据对象 class 的 getter 和 setter Android Studio 为字段自动生成的 getter 和 setter。
我也收到错误:错误:实体和 Pojos 必须有一个可用的 public 构造函数。
这是我的代码:
package mergerobotics.memo.backend.Room;
import android.arch.persistence.room.ColumnInfo;
import android.arch.persistence.room.Entity;
import android.arch.persistence.room.PrimaryKey;
import android.support.annotation.NonNull;
import android.arch.persistence.room.Database;
@Entity(tableName = "competitions")
public class CompetitionsEntity {
@NonNull
@PrimaryKey
private String mId;
@ColumnInfo(name = "competition")
private String mCompName;
@ColumnInfo(name = "year")
private String mCompYear;
public CompetitionsEntity(String Id, String CompName, String CompYear){
this.mCompName = CompName;
this.mCompYear = CompYear;
this.mId = Id;
}
@NonNull
public String getmId() {
return mId;
}
public void setmId(@NonNull String mId) {
this.mId = mId;
}
public String getmCompName() {
return mCompName;
}
public void setmCompName(String mCompName) {
this.mCompName = mCompName;
}
public String getmCompYear() {
return mCompYear;
}
public void setmCompYear(String mCompYear) {
this.mCompYear = mCompYear;
}
}
更改构造函数参数中的变量名称以匹配上面class中声明的变量名称。
您的构造函数应如下所示:
public CompetitionsEntity(String mId, String mCompName, String mCompYear){
this.mCompName = mCompName;
this.mCompYear = mCompYear;
this.mId = mId;
}`
按照以下步骤在您的 Android Studio 中安装 Lombok 插件:
File -> Settings -> Plugins -> Search Lombok
安装插件并重启IDE
我一直在尝试使用 Room 从 SQLite 数据库中读取数据,但它一直给我错误提示,即使在我使用之后也无法找到数据对象 class 的 getter 和 setter Android Studio 为字段自动生成的 getter 和 setter。
我也收到错误:错误:实体和 Pojos 必须有一个可用的 public 构造函数。
这是我的代码:
package mergerobotics.memo.backend.Room;
import android.arch.persistence.room.ColumnInfo;
import android.arch.persistence.room.Entity;
import android.arch.persistence.room.PrimaryKey;
import android.support.annotation.NonNull;
import android.arch.persistence.room.Database;
@Entity(tableName = "competitions")
public class CompetitionsEntity {
@NonNull
@PrimaryKey
private String mId;
@ColumnInfo(name = "competition")
private String mCompName;
@ColumnInfo(name = "year")
private String mCompYear;
public CompetitionsEntity(String Id, String CompName, String CompYear){
this.mCompName = CompName;
this.mCompYear = CompYear;
this.mId = Id;
}
@NonNull
public String getmId() {
return mId;
}
public void setmId(@NonNull String mId) {
this.mId = mId;
}
public String getmCompName() {
return mCompName;
}
public void setmCompName(String mCompName) {
this.mCompName = mCompName;
}
public String getmCompYear() {
return mCompYear;
}
public void setmCompYear(String mCompYear) {
this.mCompYear = mCompYear;
}
}
更改构造函数参数中的变量名称以匹配上面class中声明的变量名称。 您的构造函数应如下所示:
public CompetitionsEntity(String mId, String mCompName, String mCompYear){
this.mCompName = mCompName;
this.mCompYear = mCompYear;
this.mId = mId;
}`
按照以下步骤在您的 Android Studio 中安装 Lombok 插件:
File -> Settings -> Plugins -> Search Lombok
安装插件并重启IDE