一、涉及到数据库的操作
如果单表的话,我在service里面不做任何异常处理 直接在controller里面调用接口的时候进行try-catch,return一个异常信息,封装该异常信息,返回:“301,数据库写入失败”;
多表的话,直接用事务注解@Transactional,他就能进行回滚,我也不用在service层做特殊的异常处理,等到controller层调用的时候进行catch,然后return一个失败的信息,该失败信息也需要进行封装,不然就会出现如下情况:
注意:在service使用try-catch的时候会影响事务的回滚!
二、不涉及到数据库的操作
基本都是在service里面进行throw自定义封装的异常类,然后在controller里面进行调用的时候,进行try-catch操作,然后返回自定义的异常信息!
异常处理的时候try-catch,与throw如何选择
最新推荐文章于 2023-04-25 09:59:49 发布