2012-08-01 75 views
4

我是新來ormlite,我想設置默認值對於某些領域,如如何將默認值設置爲ormlite中的列?

@DatabaseField(generatedId = true, canBeNull = false) 
int id; 
@DatabaseField(canBeNull = true) 
String user_type; 
@DatabaseField(canBeNull = true) 
String username; 
@DatabaseField(canBeNull = true) 
String password; 
@DatabaseField(canBeNull = true) 
int id_color; 

我不得不設置的用戶名字段的默認值。我該怎麼做呢?提前致謝!!!!

回答

11

我必須設置用戶名字段的默認值。我該怎麼做呢?

我花了很多時間在ORMLite documentation。你應該總是從那裏開始。如果您轉到文檔索引並查找default value它會告訴您@DatabaseField註釋中有defaultValue字段。這裏是javadocs for that field

類似下面應該工作:

@DatabaseField(defaultValue = "unknownName", canBeNull = true) 
String username; 
+5

我應該如何處理'defaultValue'爲'boolean'?我知道這是在'SQLite'中存儲爲'int',但是'defaultValue =「1」'和'defaultValue =「true」'似乎都不起作用。我可以在創建之前使用'setter'來設置它,但我希望避免這種情況。 – theblang 2015-02-09 21:33:13

+0

@mattblang嘗試將布爾值更改爲布爾值 – anagaf 2015-07-25 15:06:47

1

但是,當你有一個日期字段初始化爲當前日期,使用默認值是delecate。

因此,在你的領域類的構造函數(我們是人),你應該初始化這個領域如下:

public Person(String user_type,...,Date enrollement){ 
    this.user_type=user_type; 
    //.... 
    // or Calendar.getInstance().getTime() 
    this.enrollement = (enrollement == null) ? new Date() : enrollement; 
} 
相關問題