完全复制老师代码,利用postman删除一条数据时,抛出异常 空针,直接忽略还是需要处理?
java.lang.NullpointerException:null 请问需要如何处理?
@DeleteMapping("/luckymoneys/{id}")
public Result deleteById(@PathVariable Integer id){
service.delete(id);
return ResultUtil.success(null);
}public void delete(Integer id) {
Luckymoney luckymoney = new Luckymoney();
luckymoney.setId(id);
repository.delete(luckymoney);
}@Pointcut("execution(public * com.imooc.luckymoney.controller.LuckMoneyController.*(..)) && !execution(public * com.imooc.luckymoney.controller.LuckMoneyController.delete*(..))" )
public void log() {
}把delete从切入表达式中去除。或者新定义一个切入表达式,让delete方法使用该切入点↓
@Pointcut("execution(public * com.imooc.luckymoney.controller.LuckMoneyController.*(..)) && !execution(public * com.imooc.luckymoney.controller.LuckMoneyController.delete*(..))" )
public void logByDel(){
}@DeleteMapping("/girls/{id}")
public void girlDelete(@PathVariable("id") Integer id){
girlRepository.deleteById(id);
throw new GirlException(ResultEnum.SUCCESS);
}无返回值的加个
throw new GirlException(ResultEnum.SUCCESS);
就饿可以了
应该是deleteGirl方法没有返回值,所以(@AfterReturning(returning = "object",pointcut = "log()"))doAftereReturning方法中参数Object为null,然后toString报的空指针吧
我的也会出现这种情况,能成功删除数据,但是会报空指针错误!
数据库没数据吧