事情是这样的 我在改个接口,需要在接口中增加某个检查,如果检查没有通过则返回给前端错误信息。 这个接口的 server 层返回的一个 domain 对象,该接口的事情简单说就是 insert。 我查了下这个 service 有多出调用就写新建了个业务 Excption,并定义了 @ControllerAdvice,用 @ExceptionHandler 去接 Exception 返回的是公司规范的 JSON 格式的数据,这样前端就不用改。同时 service 的返回类型我也不用改。
某个同事看到我这样搞后,质疑: 如果某个地方发请求调用了这个 service 方法,接受类型直接为 domain。我这个么搞会存在隐患,应该让 controller 去决定返回什么格式比较好
我的想法是请求的返回结果直接是某个对象类型不太好,总要加个成功 /失败的状态码。但是我没有特别有利的理由证明自己的观点,请问大家怎么看。
service:
if (!check()) {
throw new CommBizException(500, "check 失败");
}
CommBizException 系统会对 CommBizException 做增强直接返回给前端。