我正在使用类型转换器来处理Room数据库中的日期对象。我想知道在整个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声明,会影响不需要它的方法的性能吗?还是我应该注意其他什么?