Android ORMLite,由Serializable对象查询

时间:2014-11-17 07:42:39

标签: java android serialization ormlite

我使用ORMLite,现在有一个我无法回答的问题。看看我的例子: 我有类实现Serializable。

class Time implements Serializable {

private long time;

...blabla

}

和包含时间的类操作

class Operation implements Serializable {

private Time time;

...blabla

}

操作是数据库表,但时间不是。我认为Time存储在数据库中作为字节数组,因为它是Serializable Object。问题是使用ORMLite查询如eq(),()和其他类似的东西是正确的:

OperationDao.queryBuilder().where().between("time_field", timeObject1, timeObject2);

我感兴趣:它是如何工作的?我可以这样查询吗?或者这是不可能的,因为Time是字节数组而不能用于查询?

感谢您的回答。

1 个答案:

答案 0 :(得分:1)

  

问题是使用ORMLite查询(如eq(),在()和其他类似的内容之间是正确的......

简答为否,您无法查询存储在数据库中的字段Serializable。我建议改为使用Joda DateTime作为long存储在数据库中。您需要指定@DatabaseField(dataType = DATE_TIME),因为ORMLite使用反射与DateTime一起使用。请参阅DateTimeType