标签: android-room
只是好奇是否有人知道为什么Room要求您列出每个实体。为什么它不能自动使用@Entity注释找到您的所有实体?
答案 0 :(得分:2)
由于在一个项目中可以有多个数据库,因此Room需要知道哪个DB使用哪个类。
通过在DB类中声明实体,您实际上是在构建一个层次结构,该层次结构通知编译器使用哪些类从DAO中生成所需的结果。
从理论上讲,您的论点确实有一点,例如在单个DB的情况下,或者在有多个DB但没有重叠的情况下,应该没有问题,但是为了防止重叠,为了清楚起见,他们要求您声明所有内容。