【发布时间】:2018-09-09 16:01:18
【问题描述】:
我正在使用类型转换器来处理我的 Room 数据库中的 Date 对象。我想知道像这样使用类型转换器注释整个 Dao 是否有任何区别:
//TypeConverter for all
@Dao
@TypeConverters(DateConverter.class)
public interface MealDao {
...
或者只注释需要类型转换器的方法,比如:
//This method needs TypeConverter
@TypeConverters(DateConverter.class)
@Query("SELECT * From Meal " +
"WHERE Meal.mealTime > :dayStart " +
"AND Meal.mealTime < :dayEnd")
List<Meal> findAllMealsByDay(Date dayStart, Date dayEnd);
//This method doesn't
@Query("SELECT Meal.mealType From Meal " +
"WHERE Meal.id = :mealId ")
int retrieveMealType(long mealId);
等等?此 Dao 中的 8 个方法中有 4 个需要 TypeConverter。声明整个 Dao 会影响不需要它的方法的性能或我应该注意的其他任何事情吗?
【问题讨论】:
标签: android dao android-room