直接看代碼比較易懂
這是一個web接口,注意註解的寫法
@GetMapping("/listByIds")
@Validated // import org.springframework.validation.annotation.Validated;
private ServiceR listByIds(@RequestParam @NotNull Long[] ids) { // import javax.validation.constraints.NotNull;
... ...
}
當參數ids
爲null時,將被拒絕服務。
寫一個類攔截異常
@RestControllerAdvice
public class BaseController {
@ExceptionHandler({Exception.class})
public Response handleException(Exception e) {
return Response.error(e.getMessage());
}
}
當訪問異常時,將統一由此返回信息給調用方。Rest json化。如不傳參調用接口時↓
因爲ids不存在
或者拋出RuntimeException
時,將被攔截到,從而進行一些處理。
if(參數不合法) throw new RuntimeException("參數長度不能爲0!");
總而言之,簡化代碼,使代碼變得優雅。