gpt4 book ai didi

ormlite - 使用 ORMLite 在数据库中表示字符串列表

转载 作者:行者123 更新时间:2023-12-01 08:17:48 34 4
gpt4 key购买 nike

首先,我是 ORMLite 的新手。我希望我的模型类有一个字段,它是一个字符串列表,最终将保存我的模型对象的标签列表。
我应该使用哪些 ORMLite 注释?

首先我不想拥有所有标签的表格,然后使用 @ForeignCollectionField .
我也想过使用 @DatabaseField(dataType=DataType.SERIALIZABLE)注释,但事实证明 List<String>没有实现 Serializable界面。

你有什么建议?

最佳答案

首先,List 没有实现 Serializable但是 ArrayList 确实和大多数常见的集合实现一样好。但是从纯对象模型的角度来看,存储一个巨大的列表可能不是最好的。

那么为什么不想要一个包含所有标签的表格呢?从纯模型的角度来看,这是最好的方法。如果您每次都需要它们,它将需要第二次查询。这就是hibernate存储标签列表或数组的方式。

在阅读了您的评论@creen 之后,我仍然认为您确实想要一个标签表。您的模型类将具有:

@ForeignCollectionField
Collection<Tag> tags;
tags表不会有一个名为 "red" 的标签有多个模型类引用它,但有多个 "red"条目。它看起来像:
model_id    name
1 "red"
1 "blue"
2 "red"
3 "blue"
3 "black"

每当您删除模型对象时,您首先要执行 tags.clear();这将从标签表中删除与该模型关联的所有标签。你不必做任何额外的清理或任何事情。

关于ormlite - 使用 ORMLite 在数据库中表示字符串列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5997298/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com