我正在学习Android
,我是DB
的新手。我正在尝试使用Room
库来使用DB
。
我正在看示例代码,但是有些地方我不明白。
是调用AppDatabase abstract class
的abstract method
而不实现它。
至少就我所知,抽象类是不能被实例化的。
但是我很好奇如何调用它以及如何使用返回值。(Kotlin
也一样)
JAVA
或Kotlin
我错了吗?
ToDoDao.interface
@Dao // Data Access Object
interface ToDoDao {
@Query("SELECT * FROM ToDo")
abstract fun getAll(): List<ToDo>
@Insert
void insert(ToDo todo)
@Update
void update(ToDo todo)
@Delete
void delete(ToDo todo)
}
AppDatabase.class
@Database(entities = [Todo.class], version = 1)
abstract class AppDatabase extends RoomDatabase {
public abstract void TodoDao todotDao();
}
Main.class
AppDatabase db = Room.databaseBuilder(this, AppDatabase.class, "todo-db").build();
mResultTextView.setText(db.todoDao().getAll().toString); // THIS
我们不这样建数据库是为了简单,这两个例子是你可以参考的建立数据库和访问它使用
val DB = AppDatabase.getInstance(context).ToDoDao ()