簡體   English   中英

在ORMLite中為一個類創建多個表

[英]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的字段將位於每個fooorderbarorder表中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM