Java JPA:是否可以根据字段在其中一个字段中的值,通过更多表映射两个实体之间的两个关系?
提出这个问题的想法如下: 每个用户都有一个活动购物车和已购买/最终确定购物车的历史记录 我知道我的方法可能存在逻辑/推理上的缺陷,所以我基本上只是在问这是否可行:是否可以为包含状态字段中具有特定值的Cart的Cart列表设置两个单独的表?我希望购物车在状态处于活动状态时位于某个表中,并在完成后移动到另一个表中Java JPA:是否可以根据字段在其中一个字段中的值,通过更多表映射两个实体之间的两个关系?,java,jpa,Java,Jpa,提出这个问题的想法如下: 每个用户都有一个活动购物车和已购买/最终确定购物车的历史记录 我知道我的方法可能存在逻辑/推理上的缺陷,所以我基本上只是在问这是否可行:是否可以为包含状态字段中具有特定值的Cart的Cart列表设置两个单独的表?我希望购物车在状态处于活动状态时位于某个表中,并在完成后移动到另一个表中 @Entity @Table(name = "users") class User{ @Id private Long id;
@Entity
@Table(name = "users")
class User{
@Id
private Long id;
@OneToOne
private ShoppingCart activeCart;
@OneToMany
private List<ShoppingCart> shoppingCartHistory;
//getters setters
}
@Entity
@Table(name = "carts")
class ShoppingCart{
@Id
Long id;
private List<String> items;
private String status;
//getters setters
}
@实体
@表(name=“users”)
类用户{
@身份证
私人长id;
@奥内托内
私人购物车;
@独身癖
私人列表购物记录;
//吸气剂二传手
}
@实体
@表(name=“carts”)
类购物车{
@身份证
长id;
私人清单项目;
私有字符串状态;
//吸气剂二传手
}
为什么不为每个用户提供一个购物车,以及一个完成订单的订单列表
。老实说,我们已经认为将历史项目作为订单对象分开会更好,但我只是好奇我上面问的是否可能。不确定是否有人会需要它,但我真的找不到一个关于它是否可行的答案。您希望维护一个状态
字段,并在单独的表中保留具有不同状态的购物车
?你不认为那是多余的吗?只需创建一个额外的@OneToMany private List completed ShoppingCarts
字段,并在状态更改时在两个集合之间移动ShoppingCarts
。