spring+mybatis日志2

  • 问题描述:在前端一个显示商品列表页面,通过点击修改按钮跳转到修改页面,因为需要绑定商品列表页面的id属性作为参数进行修改对应商品,但是参数传递却一直无效
/*这里是商品列表页面跳转到修改页面*/
<a href="${pageContext.request.contextPath}/itemEdit.action?id=${item.id}">修改</a>
/*这里是修改页面获取id属性部分代码*/
<form id="itemForm" action="${pageContext.request.contextPath }/updateitem.action" method="post">
        <input type="hidden" name="items.id" value="${item.id }"> 修改商品信息:
        ........
  • 思路:

    • 最开始的想法就是是不是因为超链接导致传输信息丢失,于是在页面利用session获取属性并保存,再打断点,获取不到,谷歌浏览器F12模式查看response包体属性为空

    • 接下来,写测试代码发现在controller层中修改信息部分代码入参id是有的,排除id传参为空的可能

    • 最后查看springmvc文档,再查看源码发现是利用HashMap进行属性保存获取,猜测{key,value}存取错误,于是代码一点点仔细查了一遍,果然是属性名不配对的问题
/*这是controller层处理代码*/
@RequestMapping("/itemEdit")
    public String toItemsEdit(Integer id, ModelMap model){
        Items items = itemServices.queryItemsById(id);
        /**
        *这里存取错误,在JSP我是利用value="${item.xx }获取数据,
        *而我这里的键值对为{"items",items},不匹配
        */
        model.addAttribute("items",items);
        return "editItem";
    }

    /**
     * 修改更新信息
     */
    @RequestMapping("/updateitem")
    public String updateItem(QueryVo vo){

        itemServices.updateItemById(vo.getItems());

        return "redirect:/itemList.action";
    }
  • 总结:仅仅是因为将item写成items导致修改bug耗磨时间,终究还是代码不够严谨,小细节没有处理好,谨记以此勉励!!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值