[英]Create multiple tables for one class in ORMLite
我在Android上使用ORMLite並提出以下問題:是否可以基於單個Java類創建許多表?
這些表的名稱應該不同,對它們的訪問應該是名稱。
例如,如果我有一個類:
public class Order{
@DatabaseField
public string Name;
@DatabaseField
public string Amount;
}
我有一個可以創建訂單的動態數量的模塊。 我希望每個模塊都有自己的表,但所有表都應該有類似的模式。
我知道我可以在Order類中添加一個指示源模塊名稱的字段,並將所有訂單都放在一個表中,但我想知道是否有辦法分離表(為了更快的查詢,更快地刪除訂單)相同的模塊等)
謝謝!
這里的一個重要問題是“動態”是什么意思。 如果你的意思是你需要動態創建這些模塊Order
並且你事先不知道它們的名字,那么我相信模塊名稱字段是一種有效的方法。 為每種類型的訂單創建一個表似乎對我來說過早優化 - 沒有充分理由的復雜性。
也就是說,您可以通過為每個表實例化DatabaseTableConfig
並以編程方式定義類來完成動態類。
如果你真的不是指動態,那么完成將每個模塊Order
放在自己的表中的最簡單方法就是使用子類。
你可以有:
@DatabaseTable
public class FooOrder extends Order {
// fields will be gotten from Order
}
@DatabaseTable
public class BarOrder extends Order {
// fields will be gotten from Order
}
Order
的字段將位於每個fooorder
和barorder
表中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.