我有30個對象,每個實例由7個字符串字段和一個小位圖組成。這些對象將被銷燬並每天重新創建。 在我的android應用程序中,從db寫入和讀取這些數據會更高效嗎?或者簡單地創建一個新類並創建30個實例並將它們存儲在一個數組中?內存高效/性能/等。在Android應用中效率更高?數據庫或對象
謝謝你的時間。
我有30個對象,每個實例由7個字符串字段和一個小位圖組成。這些對象將被銷燬並每天重新創建。 在我的android應用程序中,從db寫入和讀取這些數據會更高效嗎?或者簡單地創建一個新類並創建30個實例並將它們存儲在一個數組中?內存高效/性能/等。在Android應用中效率更高?數據庫或對象
謝謝你的時間。
如果您不想爲數據庫編寫樣板代碼,則可以將對象以JSON
或XML
格式保存爲文件。
你有兩種方式:
JSON
或XML
本地閱讀數據庫是很好的解決方案,因爲Android中的SQLite
是真正的快速等等。但是如果你想改變表格的結構,你必須寫ALTER TABLE
查詢onUpdate()
方法SQLiteOpenHelper
等煩惱。
所以我建議使用XML
或JSON
來存儲數據。
UPD
此外,您還可以標記您的自定義數據類爲可序列化,ArrayList中或其他結構存儲值和序列化存儲,然後反序列化閱讀。
對於數量有限的對象,我認爲你用Object
表示並將它們存儲在ArrayList
中。針對大量條目的DB設計。
但是,如果數據需要整天保存,如果將它放在內存中,您有將其丟失的可能性爲GC
,在這種情況下,您無法將其存儲在數據庫中。
你從哪裏得到這些數據?
將項目寫入數據庫是因爲它們需要持久化,如果只持續24小時。
您應該將圖像文件存儲在您的沙盒中,並按照文件名在數據庫中引用它們,因爲即使最小的Bitmap
blob存儲在數據庫中通常效率也不高。
謝謝Artem。用XML存儲 – mc1814