Service层测试成功能取出第一大类中的所有商铺,Controller层测试返回的是一个空的json

来源:9-5 店铺列表页后端的开发

慕粉4229098

2018-01-22

Service层测试成功能取出第一大类中的所有商铺,Controller层测试返回的是一个空的json,经测试传入参数均正确,测试按F5时发现无法进入Service层的实现方法,请问老师是不是因为无法进入方法导致的返回空JSON,如果是这样那么是什么地方出现了错误导致的,如果不是那又是什么原因导致的返回空json的?

写回答

2回答

翔仔

2018-01-22

同学好,无法进入service层的实现方法?可以尝试在实现方法第一行里打个断点就可以了,并且在调用service方法的下一行也打个断点,看看返回什么值,同时看看传入的参数是否有问题。

0
1
慕粉4229098
好的,谢谢老师
2018-01-22
共1条回复

慕沐3514420

2018-06-21

这个问题我也遇到了,如果自己往数据库加数据而不是使用老师的sql,可能会有这个情况,就是添加商品时候没给商品状态置上:


在map中针对查询有状态过滤的条件:


<if test="shopCondition.enableStatus != null">

and s.enable_status = #{shopCondition.enableStatus}

</if>


那么问题就在于:


在 ShopListController 中的compactShopCondition4Search方法里,shopCondition.setEnableStatus(1); 这里设置成了审核成功,而Service层测试中(实际是Dao层)里并没有设置,所以在这层测试中状态0或1都不会被过滤就会输出大类别下的所有店铺,而自己加商店数据的时候忘记设置商店状态了,所以在Controller层中把状态设置上后就没有匹配的。


所以解决方法就是检查一下数据库里商店数据的状态是否有值,并且这里检索的是审核成功的店铺。



1
0

Java双版本(SSM到SpringBoot)校园商铺全栈开发

SSM商铺V1.0,解决毕设痛点;SpringBoot商铺V2.0,满足工作刚需

5113 学习 · 8144 问题

查看课程