itemcontroller中的createItem方法进不去,控制台报错itemmapper里的sql语句有问题

来源:4-2 商品模型模型--商品创建02

qq_后来_43

2020-04-30 11:33

求大神解救,一上午也没有挑出来

http://img3.mukewang.com/5eaa464d0001bd8217670300.jpg

impl中的代码

 @Override
    @Transactional
    public ItemModel createItem(ItemModel itemModel) throws BusinessException {
//        进行入参校验
        ValidationResult result=validator.validate(itemModel);
        if (result.isHasErrors()){
            throw new BusinessException(EmBusinessError.PARAMETER_VALIDATION_ERROR,result.getErrorMsg());
        }
//        将ItemModel转为Item(方法)
        Item item = convertItem(itemModel);
//将Item写入数据库 因为配置文件中设置了keyProperty="id" useGeneratedKeys="true",所以这里获得到了自增id
       itemMapper.insertSelective(item);
//        将id给itemmodel
        itemModel.setId(item.getId());
        System.out.println(itemModel+"service...");
//        将ItemModel转为Stock(方法)
        Stock stock = convertStock(itemModel);
//        将Stock写入数据库
       stockMapper.insertSelective(stock);
//        返回创建完成的对象
        return itemDetailById(itemModel.getId());
    }

http://img1.mukewang.com/5eaa46de000116ff15430751.jpg感觉xml文件没啥问题,加了keyProperty和useGeneratedKeys

写回答 关注

1回答

  • weixin_慕仔6499180
    2020-05-21 03:34:05

    你的xml里面的数据库有个字段名为desc,desc在mysql里面是降序的特殊字,就像where之类的一样,不能用来当作表字段名,换一下应该就没问题了。

SpringBoot构建电商基础秒杀项目

应用SpringBoot快速搭建拥有用户、商品、交易及秒杀活动的电商秒杀应用。

49065 学习 · 954 问题

查看课程

相似问题