jpa访问数据库问题

来源:6-8 买家订单-service取消

颜晓明l仁仁阅

2019-04-19

1、数据库访问效率问题
for(CartDTO cartDTO:cartDTOList){
ProductInfo productInfo=productInfoRepository.findById(cartDTO.getProductId()).orElse(null);
}
这样子是不是每次都去查数据库会有性能问题,怎解决?

2、我的findOne返回的是Optional,怎么不可转为ProductInfo对象
productInfoRepository.findOne(cartDTO.getProductId())

用 ProductInfo productInfo=productInfoRepository.findById(cartDTO.getProductId()).orElse(null);才行。

写回答

2回答

廖师兄

2019-04-20

用in查询,入参传productId List,这样就执行一条sql了,for循环查多次,是有性能问题的

0
0

廖师兄

2019-04-19

1. 用in来查,商品列表的时候有讲过
2. 这是新版本的用法,课程最后会讲,学习时保持和视频中一样的版本

0
1
颜晓明l仁仁阅
in是返回一个List吧? for循环每次去查数据库,是不是每次都连一次数据库,这样是不是会有性能问题
2019-04-19
共1条回复

Spring Boot双版本(1.5/2.1) 打造企业级微信点餐系统

从0到1开发中小型企业级Java应用,并学会迭代重构技巧

6410 学习 · 5247 问题

查看课程