安卓房间错误:道类必须用@Dao
2022-09-04 23:54:04
我正在将 Room 用于我的 Android 应用。我现在正试图设置我的数据库,但有一条错误消息,说,Dao类必须用@Dao进行注释。但是,正如您在编码片段中看到的那样,Dao 类是用 @Dao 注释的。有谁知道问题或我的错误可能在哪里?两个文件不在同一文件夹中(DAO 位于服务文件夹中,而另一个类位于模型文件夹中)
设备.java
@Entity(tableName = "device")
public class Device {
@PrimaryKey(autoGenerate = true)
public int device_id;
@ColumnInfo(name = "identifier")
public String identifier;
@ColumnInfo(name = "language")
public int language;
@ColumnInfo(name = "searchFilter")
public int searchFilter;
public Device(String identifier, int language, int searchFilter){
this.identifier = identifier;
this.language = language;
this.searchFilter = searchFilter;
}
}
设备道.java
@Dao
public interface DeviceDAO {
@Insert(onConflict = OnConflictStrategy.REPLACE)
void addDevicePreferences(DifficultType difficultType);
@Query("SELECT * FROM device")
List<Device> selectAllDevicePreferences();
@Update(onConflict = OnConflictStrategy.REPLACE)
void updateDevicePreferences(Device device);
}