我有一個使用ORMLite的Android項目。所有工作正常,但對於數據庫中的某些字段,它使用java.sql.Timestamp
作爲字段類型。它在我之前使用的ORMLite 4.10上運行良好。但現在我需要更新ORMLite,並有一個問題.. 當我更新ORMLite到較新的版本並運行它,應用程序拋出異常:Android + ORMLite + java.sql.Timestamp
W/System.err( 615): java.sql.SQLException: ORMLite can't store unknown class
class java.sql.Timestamp for field 'createDate'.
Serializable fields must specify dataType=DataType.SERIALIZABLE
有用於CREATEDATE場任何數據類型參數之前。但是當我添加它時,錯誤並不是固定的,app也會拋出這個異常:(項目已經在Market上,所以我不能將dataType更改爲其他類型(如Date),並且可以刪除該字段。
我應該用什麼來戳在較新的ORMLite或者是ORMLite錯誤
更新:?? 通過改變時間戳類型爲序列型固定它現在的代碼如下所示:
@DatabaseField(dataType = DataType.SERIALIZABLE)
public Serializable createDate;
public Timestamp getCreateDate()
{
return (Timestamp)createDate;
}
對於後代,你不應該這樣做'可序列化'破解。你應該可以有任何實現'Serializable'的類型。 – Gray 2012-04-23 15:03:55