对e.printStackTrace()的理解

211 阅读1分钟

微信群:Day9884125

背景:

   今天对数据库的操作进行状态的判断,发现抛出异常。在控制台没有打印具体报错信息。一开始以为是框架没有开启日志,结果日志开启正常。

错误代码演示

//下面这个代码出现异常,控制台没有详细的信息
try{
        templateCountMapper.deleteData(startTime, endTime, flag);
    }catch (Exception e){
        result.setCode('0000');
        result.setDesc("删除失败,请确认系统运行情况");
        return result;
 }

正确代码演示

//下面代码报错,会有详细信息。因为有e.printStackTrace(),它是打印堆栈信息的。
//注意自定义了catch中内容,报错信息会不在显示默认的信息,所以一定异常要细化
try{
    templateCountMapper.deleteData(startTime, endTime, flag);
}catch (Exception e){
    e.printStackTrace();
    result.setCode('0000');
    result.setDesc("删除失败,请确认系统运行情况");
    return result;
}