因此,我正在构建一个Android应用,该应用使用Room Persistance将数据存储在本地数据库中,并在列表中检索数据并以文本视图显示。
这是房间模型:
.FormulaR1C1 = "Y"
也定义了get和set函数,但是出于目的,我将不显示它。
这是DAO:
@Entity
public class RecipeModel {
@NonNull
@PrimaryKey
private String recipe_id;
private String publisher;
private String f2f_url;
private String title;
private String source_url;
private String image_url;
private Float social_rank;
private String publisher_url;
public RecipeModel(){
}
public RecipeModel(@NonNull String recipe_id, String publisher, String f2f_url, String title, String source_url, String image_url, Float social_rank, String publisher_url) {
this.recipe_id = recipe_id;
this.publisher = publisher;
this.f2f_url = f2f_url;
this.title = title;
this.source_url = source_url;
this.image_url = image_url;
this.social_rank = social_rank;
this.publisher_url = publisher_url;
}
}
这是数据库:
@Dao
public interface DaoAccess {
@Insert
void insertOnlySingleRecipe (RecipeModel recipe);
@Insert(onConflict = REPLACE)
void insertMultipleRecipes (List<RecipeModel> recipes);
@Update
void updateRecipe (RecipeModel recipe);
@Delete
void deleteRecipe (RecipeModel recipe);
@Query("SELECT * FROM RecipeModel")
LiveData<List<RecipeModel>> getAllRecipes();
}
最后是活动:
@Database(entities = {RecipeModel.class}, version = 1, exportSchema = false)
public abstract class RecipeDatabase extends RoomDatabase {
public abstract DaoAccess daoAccess();
}
但是,当我启动应用程序并打开“活动”时,应用程序崩溃。我在数据库中插入了一些数据,但是崩溃了。有任何想法吗?