Java中为什么用log4j的error方法记录异常到控制台,有的时候会打印栈轨迹,有的时候就只有

Java中为什么用log4j的error方法记录异常到控制台,有的时候会打印栈轨迹,有的时候就只有异常的名字而没有栈轨迹,完全不知道异常从哪一行抛出来的啊... Java中为什么用log4j的error方法记录异常到控制台,有的时候会打印栈轨迹,有的时候就只有异常的名字而没有栈轨迹,完全不知道异常从哪一行抛出来的啊 展开
 我来答
zhongtyler
推荐于2017-12-16 · TA获得超过4408个赞
知道大有可为答主
回答量:4384
采纳率:79%
帮助的人:937万
展开全部
是这样的,如果获取了异常,把异常作为最后一个参数打出来,那么可以打出异常的stack,否则不行。也就是说
try{
.......
}
catch(Exceptoin e){
log.error("运行异常",e); //可以获取异常的stack
log.error("运行异常"); // 只能获取运行异常几个字
log.error(e); //会调用e的toString方法,可以获取异常的Message,但没有stack
log.error(e.getMessage);//可以得到异常的message ,没有stack
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式