【问题标题】:Hibernate mapping for Cart-Item relationship?Cart-Item 关系的休眠映射?
【发布时间】:2021-06-25 04:20:13
【问题描述】:

考虑Item 独立存在的表。

class Item {
   private int item_id;
   private String name;
   private double price;
   private int quantity;
}

考虑一个可以包含多个项目的Cart

class Cart {
   private int cart_id;
   private List<Item> items;
}

如果只有Cart 包含多个项目并且Item 不能包含购物车,那么正确的休眠映射应该是什么?

对于OneToMany,我无法理解为什么Item 需要与Cart 关联。 Item 是一个独立的模型文件,存在于Repository 中。当我们创建购物车时,我们可以根据可用数量添加一些商品。

【问题讨论】:

  • 那就做一个单向的关系,把List放在Cart里,不要把Cart放在Item里。

标签: java spring-boot hibernate spring-data-jpa hibernate-mapping


【解决方案1】:

您的购物车应该包含商品。无需在商品中添加购物车。

如果您将 Item 的新实例存储到购物车(列表)中会更好。 在这个新实例中,只有 quantity 字段会有所不同。 示例:您有 10 支钢笔,您在购物车中添加了 2 支钢笔。所以现在笔数量减少了 2。使用quantity = 2 创建一个新的笔实例并将这个新实体传递给购物车。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多