異常:增強(qiáng)for循環(huán)賦值并且向list集合里添加元素沉删,每個元素都和最后賦值的一樣
原因:構(gòu)造器寫在了外面渐尿,每次add()添加的都是同一個元素,更改器方法改變的也是同一個元素的值矾瑰,list集合最后每個元素都是最后一次賦值生成的值
OrderItem orderItem = new OrderItem() ;
for (CartItem cartItem : cartItemList) {
orderItem.setOrderItemId(CommonUtils.uuid());
orderItem.setQuantity(cartItem.getQuantity());
orderItem.setSubTotal(cartItem.getSubTotal());
orderItem.setBook(cartItem.getBook());
orderItem.setOrder(order);
orderItemList.add(orderItem) ;
}
解決方案:把構(gòu)造器寫在增強(qiáng)for循環(huán)里面
for (CartItem cartItem : cartItemList) {
OrderItem orderItem = new OrderItem() ;
orderItem.setOrderItemId(CommonUtils.uuid());
orderItem.setQuantity(cartItem.getQuantity());
orderItem.setSubTotal(cartItem.getSubTotal());
orderItem.setBook(cartItem.getBook());
orderItem.setOrder(order);
orderItemList.add(orderItem) ;
}