场景
1.throws是在方法上抛出异常,throw是在语句上抛出异常。
2.try-catch是在catch里处理try捕获异常并处理。
3.一般try-catch是在上层Controller中使用,而在Service以及dao层的接口上用throws向上级抛出异常。
避免踩坑:
在Controller中添加了try-catch,没有在sevice以及dao层添加throws,导致在dao层调用mapper文件中
某方法时在if标签中有错误时:
<if test="wmsReceiveOrder != null and wmsReceiveOrder.purchaseCode!=null and wmsReceiveOrder.purchaseCode!=''" >and ro.purchase_code=#{wmsReceiveOrder.purchaseCode} </if>
不会输出异常信息。
实现
1.在Controller层添加try-catch
try {
IPage<WmsReceiveOrderVO> page = receiveOrderService.pageTray(pageEntity, vo);