qq_新_bfvBKX
2018-12-14 13:09
@Override public ItemModel getItemById(Integer id) { ItemDo itemDo = itemDoMapper.selectByPrimaryKey(id); if (itemDo == null) { return null; } //操作获得库存的数量 //!!!!!返回为空指针 ItemStockDo itemStockDo = itemStockDoMapper.selectByItemId(itemDo.getId()); //将dataObject->Model ItemModel itemModel = convertFromObject(itemDo, itemStockDo); return itemModel; }
<select id="selectByItemId" parameterType="java.lang.Integer" resultMap="BaseResultMap"> select <include refid="Base_Column_List"/> from item_stock where item_id = #{itemId,jdbcType=INTEGER} </select>
你好,建议排查步骤如下:
debug下代码,确认itemDO内的getId()数字,并通过和自己的数据库做对比,判断下是否数据库内对应的itemDO对应的id在item stock表里没有对上
猜测你的问题应该是在创建item的时候没有把itemstock表的item id字端和item表的id字端对应上
我也是出现了这样的问题,命名把itemstock插入进去了,但就是获取不到,犯了一个低级错误,就是
selectByItemId的sql语句中where条件应该是item_id而不是id。。。。。。。
SpringBoot构建电商基础秒杀项目
49065 学习 · 954 问题
相似问题