我正在创建一个具有 User 对象的 Web 应用程序,每个 User 对象都有一个需要存储到 mySQL 数据库表中的对象(Food)的 ArrayList。我想将整个 ArrayList 存储到单个列中。将其存储为 Json 会更好吗?或者我应该为每个用户创建一个表来存储 ArrayList 的各个项目?我遇到的唯一问题是数据会非常频繁地编辑。
编辑:我有用户和食物的表格。这个想法是,用户将食物表中的食物添加到他们的 ArrayList 中,然后我想将该 ArrayList 存储在某个东西中。
public class User{
private int id;
private String username;
private List<Food> FoodList = new ArrayList<Food>();
}
public class Food{
private int id;
private String name;
private double protein;
private int calories;
...
}
最佳答案
- 正如 @ayrton 提到的,创建(至少)两张表是一个好主意(一张用于用户,一张用于食品)。
- 绝对不要为每个用户创建一个表
- 正如 @NeplatnyUdaj 提到的,连接表(将食物映射到用户)可能是必要的(或者可能有点过分,具体取决于您的需求)。
- 鉴于您所描述的详细信息,JSON 几乎肯定不是最好的方法(并非在所有情况下都是如此,但如果您处于这种情况,我可能建议您考虑不同类型的数据库)。
(欢迎来到 SO,顺便说一句!)
关于java - 在mySQL数据库中存储ArrayList对象数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55854037/