2
流,我不知道爲什麼,當我在控制器改變實體它被保存在數據庫中。它看起來像控制器有一個交易。當我在for循環中設置屬性時,它不保存在數據庫中。爲什麼控制器具有交易時對收集
我的春天控制器
@RestController
public class CartController {
@Autowired
DeliveryTypeRepository deliveryTypeRepository;
@GetMapping("/cartStepTwoAction")
public ModelAndView cartStepTwoAction() {
List<DeliveryType> dtList = deliveryTypeRepository.findAll();
dtList.stream().forEach(x -> x.setPriceBrutto(new BigDecimal(44)));
// why dirty checking save change ?
...
ModelAndView model = new ModelAndView();
return model;
}
}
和存儲庫當滿足以下條件
@Repository
public class DeliveryTypeRepositoryImpl implements DeliveryTypeRepository {
@PersistenceContext
EntityManager em;
@Override
public List<DeliveryType> findAll() {
String sql = "SELECT e FROM DeliveryType e";
Query query = em.createQuery(sql);
return query.getResultList();
}
}
你有沒有定義的'OpenEntityManagerInViewFilter'無論是作爲你的自動配置或定製配置的一部分嗎? – Naros
不,我沒有定義OpenEntityManagerInViewFilter – user249115