来自大佬的指点
今天大佬特意来抽查我的代码特意来和我说了下关于抛异常的问题。我原本的代码都是把异常一股脑的抛出去就是本来是这样:
@ApiOperation("/各个类型单位期末户数")
@PostMapping("/typegeneral")
public ResponseEntity getTypeGeneral(@RequestBody TableSearchRequest<EquipmentSearch> request) throws DataSongException, SQLException {
ResponseEntity response = new ResponseEntity();
Object generalOverView = relevantService.getTypeGeneral(request);
response.setValue(generalOverView);
return response;
}
大佬表示要最好只抛出BaseException原因如下:
所以就将方法修改如下:
@ApiOperation(value = "特种设备相关单位统计分析-地图")
@PostMapping(value = {"/regionalDistributionMap"})
public ResponseEntity regionalDistributionMap(@RequestBody TableSearchRequest<EquipmentSearch> tableSearchRequest) throws BaseException {
ResponseEntity responseEntity = new ResponseEntity();
Map histogram = null;
try {
histogram = relevantService.getRelevantUnitsHistogram(tableSearchRequest, "f_tsg_relevant_units", "district_code_2");
} catch (DataSongException e) {
throw new BaseException("数据查询异常", e);
}
responseEntity.setValue(histogram);
return responseEntity;
}
就是说报错信息不能让用户看到只让他们看友好的文字信息,后面加个e方便开发人员在控制台看报错信息。
小记:
唉,什么时候才能成为大佬那样的人呀。我用的框架都是人家写的,一开始我以为大佬就比我大个两三岁后来同事和我说大佬已经35了,说实话真的看不出来,可能大佬只专心于技术都忘了自己的年龄了吧。不过也好这样比较纯粹,就感觉像在学校里面刚出来不久似的。而且大佬也比较谦虚他说会不定时抽查我的代码,还和我说这是小问题,我感觉这个异常的问题还是比较重要让用户看到一堆英文字母,始终是很不友好。