itemcontroller中的createItem方法進(jìn)不去,控制臺報(bào)錯(cuò)itemmapper里的sql語句有問題
求大神解救,一上午也沒有挑出來
impl中的代碼
?@Override ????@Transactional ????public?ItemModel?createItem(ItemModel?itemModel)?throws?BusinessException?{ //????????進(jìn)行入?yún)⑿r?yàn) ????????ValidationResult?result=validator.validate(itemModel); ????????if?(result.isHasErrors()){ ????????????throw?new?BusinessException(EmBusinessError.PARAMETER_VALIDATION_ERROR,result.getErrorMsg()); ????????} //????????將ItemModel轉(zhuǎn)為Item(方法) ????????Item?item?=?convertItem(itemModel); //將Item寫入數(shù)據(jù)庫?因?yàn)榕渲梦募性O(shè)置了keyProperty="id"?useGeneratedKeys="true",所以這里獲得到了自增id ???????itemMapper.insertSelective(item); //????????將id給itemmodel ????????itemModel.setId(item.getId()); ????????System.out.println(itemModel+"service..."); //????????將ItemModel轉(zhuǎn)為Stock(方法) ????????Stock?stock?=?convertStock(itemModel); //????????將Stock寫入數(shù)據(jù)庫 ???????stockMapper.insertSelective(stock); //????????返回創(chuàng)建完成的對象 ????????return?itemDetailById(itemModel.getId()); ????}
感覺xml文件沒啥問題,加了keyProperty和useGeneratedKeys
2020-05-21
你的xml里面的數(shù)據(jù)庫有個(gè)字段名為desc,desc在mysql里面是降序的特殊字,就像where之類的一樣,不能用來當(dāng)作表字段名,換一下應(yīng)該就沒問題了。