【发布时间】:2019-08-01 16:37:38
【问题描述】:
我正在从具有两个端点的后端获取订单,一个用于获取有限数量的订单,一个用于仅获取可用订单总数。我可以使用 CustomerOrder 实体类存储订单,但如何存储原始计数值?
由于 ObjectBox 不允许原始类型的盒子并且需要使用实体类,我不得不在实体类中包装一个(!)整数。也许有更简单的方法可以做到这一点?
什么不起作用但我基本上想做的事情:
Box<Integer> countBox = boxStore.boxFor(Integer.class);
我当前的实体包装类(仍然只使用表中的 1 行):
@Entity
public class CustomerOrderCount {
@Id
public Integer count;
}
我只是想遵循最佳实践并简化事情。也许有一种比使用 ObjectBox 更简单的方法,但我在这里没有看到它仍然是合法的。
【问题讨论】:
-
ObjectBox 用于将实体类映射到框。其他数据库具有类似的数据结构(例如表格或文档)。如果您只想存储一个键 + 值,对于 Android 可能会查看 SharedPreferences 或对于 Java 在 Properties 作为更好的选择。
-
我同意,但是 SharedPreferences 是要走的路吗?将单个值存储在表中是不好的做法吗?我读到你应该小心使用 SharedPrefs。
-
这不是坏习惯。我只是根据要求提出了一种更简单的方法:)
-
@Uwe-ObjectBox 谢谢!如果您愿意,您可以将此作为答案发布,我会接受。 :)