DEFT1998 2020-05-10 23:36 采纳率: 100%
浏览 1319
已采纳

Spring boot+mybatis项目新增删除查询都没有问题,但是更新时没有错误数据库里面的数据为什么没有修改?

Controller

@PostMapping(value = "/edit")
    @ResponseBody
    @PreAuthorize("hasAuthority('sys:contract:edit')")
    @ApiOperation(value = "编辑合同信息", notes = "保存修改的合同信息")//描述
    public Results<SysContract> updateContract(ContractDto contractDto) {
        SysContract sysContract = null;
        sysContract = contractService.getContract(contractDto.getName());
        if (sysContract != null && !(sysContract.getId().equals(contractDto.getId()))) {
            return Results.failure(ResponseCode.CONTRACT_REPEAT.getCode(), ResponseCode.CONTRACT_REPEAT.getMessage());
        }
        return contractService.updateContract(contractDto);
    }

Service

@Override
    public Results updateContract(ContractDto contractDto) {
        contractDao.updateContract(contractDto);
        log.info("service已经更新"+contractDto.getName());
        return Results.success();
    }

Dao

int updateContract(SysContract contract);

Dao对应的xml

<mapper namespace="com.sxbang.friday.dao.ContractDao">

    <update id="updateContract" parameterType="com.sxbang.friday.model.SysContract">
        update sys_contract t
        <set>
            <if test="name != null">
                name = #{name},
            </if>
            <if test="startDate != null">
                startDate = #{startDate},
            </if>
            <if test="expireDate != null">
                expireDate = #{expireDate},
            </if>
            <if test="contractUrl != null">
                contractUrl = #{contractUrl},
            </if>
            updateTime = #{updateTime}
        </set>
        where t.id = #{id}
    </update>

</mapper>

service获取到的数据已经是修改过的了,为什么数据库还是没更新呢?我前两个用户和顾客资料的更新也是这样写的,几乎一样的为什么这个就更新不了呢?有没有大佬能解答一下...

  • 写回答

3条回答 默认 最新

  • zyydomain 2020-05-11 10:16
    关注

    看你的sql是根据id更新的,ContractDto 看下这个实体里id有没有值,如果是null的话找不到就不会更新了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 lammps拉伸应力应变曲线分析
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
  • ¥30 python代码,帮调试,帮帮忙吧
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建