Java:将throwable / exception的整个堆栈跟踪转换为ByteBuffer的最有效方法?

时间:2012-09-19 16:33:16

标签: java exception stack-trace throwable

将throwable / exception的整个堆栈跟踪转换为ByteBuffer(在Java中)的最有效方法是什么?

具体来说,我需要将整个异常记录到数据库中。 Thread.currentThread()。getStackTrace()返回StackTraceElement []数组的列表。

那么,Throwable类中有一个printStackTrace()方法吗?

2 个答案:

答案 0 :(得分:6)

如果你真的想这样做,这应该是你需要的:

ByteArrayOutputStream os = new ByteArrayOutputStream();
ex.printStackTrace(new PrintStream(os));
ByteBuffer bb = ByteBuffer.wrap(os.toByteArray());

答案 1 :(得分:1)

您可以在apache commons中使用ExceptionUtils类。