为什么业务层的方法要抛出异常?
如果不抛出异常,别人就不知道操作成功与否
业务层在正确操作情况下是要返回一部分的数据的(结果)
很多操作它都会有失败的可能(好几种)返回值类型就表示正确操作时的数据类型
错误通过抛出异常来描述错误
更好的表现设计的业务的操作问题 后续对事物的处理需要用到异常
关于ResponseResult类 为什么需要多种不同的构造方法?(懒)
可以快速的创建对象
1创建对象的同时为属性赋值
2限制对象的创建过程(私有化)
3强制要求得到某些参数(数据)
new ResponseResult(2,e)是什么意思?
给客户端的数据里面包含一个为2的代号 e是异常对象
作为ResponseResult构造方法的参数放进去
处理请求的方法为什么返回ResponseResult?
返回一个让spingmvc默认不认识的东西,自己写的类型
为什么自定义异常需要RuntimeException的子孙类?
如果不是RuntimeException,就是强制try-catch,就没有必要
统一处理异常(只有RuntimeException才能满足对事物的使用的需求)
业务层的方法为什么需要通过throws声明抛出异常?
明确告诉当前的调用者我们可能抛出什么异常
为什么要将处理异常的代码编写在BaseController中?
因为它是当前控制器类的基类,同时处理异常的代码只作用于当前类
为了统一管理
处理异常时,@ExceptionHandler注解可以不配置参数吗?
可以,但一般会配置参数,希望处理的异常的范围是我们指定范围,而不是什么异常都处理