行止OH 2023-11-20 15:16 采纳率: 0%
浏览 8

java项目,数据库查询时,未查询到预期的数据

项目说明:java项目,数据库:mysql 5.7.26,持久层工具:myBatis、myBatis-plus。
方法逻辑说明:调用saveDraftData()方法时,入参 fClaimPlanFactorConfigList 不为空、有数据(其中,fClaimPlanFactorConfig对象的PlanCode字段值,等于fClaimPlanTask.getPlanCode()的值)。方法首先向fClaimPlanFactorConfig表插入数据,然后再调用queryList()方法查询刚刚插入成功的数据。
遇到的问题:目前,程序执行后,queryList()方法查询的结果为空,没有按照预期将刚刚插入的数据查询出来。请教各位大能,这可能是什么原因导致的?


@Transactional
public void saveDraftData(FClaimPlanTask fClaimPlanTask,
                       List<FClaimPlanFactorConfig> fClaimPlanFactorConfigList){
        //更新任务表、插入新数据
        fClaimPlanTaskManager.update(fClaimPlanTask);
        if( !CollectionUtils.isEmpty(fClaimPlanFactorConfigList)){
                //将数据插入fClaimPlanFactorConfig表中
                fClaimPlanFactorConfigList.forEach(claimPlanFactorConfig -> this.update(claimPlanFactorConfig));
        }
        //根据planCode,查询刚刚插入fClaimPlanFactorConfig表中的数据
        fClaimPlanFactorConfigList =
                this.queryList(new FClaimPlanFactorConfig(){{setPlanCode(fClaimPlanTask.getPlanCode());}});
        logger.info("fClaimPlanFactorConfigList = {}", fClaimPlanFactorConfigList);

        //其他表的增删改查逻辑,因与此问题无关,此处省略
        ......
        });
}
  • 写回答

2条回答 默认 最新

  • 5美刀 2023-11-20 15:45
    关注

    先确定数据库中有没有插入成功数据。然后检查一下你的查询语句。

    评论

报告相同问题?

问题事件

  • 创建了问题 11月20日