throw new Exception("",e); e是你捕获到的异常,""中你可以补充对异常的说明
catch(Exception e){ throw new Exception("xxxx"+e.getMessage); }
比如下面这段代码: Object obj = null; try{ obj.equals("aa"); }catch(Exception ex){ // ex.printStackTrace(); throw new Exception("我定义的信息====="+ex.getMessage().toString()); }明显的空指针,这样抛出来得到的只是:我定义的信息=====java.lang.NullPointerException。 我现在想要得到的是下边这一大串: java.lang.Exception: 我定义的信息=====java.lang.NullPointerException at net.greatsoft.chss.ro.archive.MemberRO.findMemberList(MemberRO.java:122) at net.greatsoft.chss.ro.archive.MemberRO$$FastClassByCGLIB$$bc8c5f93.invoke(<generated>) at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191) at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:692) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150) at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:80) at net.greatsoft.framework.transaction.TransactionManagerAdvice.around(TransactionManagerAdvice.java:49) at sun.reflect.GeneratedMethodAccessor101.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:621) ........
e是你捕获到的异常,""中你可以补充对异常的说明
catch(Exception e){
throw new Exception("xxxx"+e.getMessage);
}
Object obj = null;
try{
obj.equals("aa");
}catch(Exception ex){
// ex.printStackTrace();
throw new Exception("我定义的信息====="+ex.getMessage().toString());
}明显的空指针,这样抛出来得到的只是:我定义的信息=====java.lang.NullPointerException。
我现在想要得到的是下边这一大串:
java.lang.Exception: 我定义的信息=====java.lang.NullPointerException
at net.greatsoft.chss.ro.archive.MemberRO.findMemberList(MemberRO.java:122)
at net.greatsoft.chss.ro.archive.MemberRO$$FastClassByCGLIB$$bc8c5f93.invoke(<generated>)
at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)
at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:692)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:80)
at net.greatsoft.framework.transaction.TransactionManagerAdvice.around(TransactionManagerAdvice.java:49)
at sun.reflect.GeneratedMethodAccessor101.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:621)
........
然后进行遍历。
谢谢你的回答,我想在问一下,如果我现在取不到这个e呢,我没用catch,我用一个条件去判断,如果条件符合,我直接throw 异常,请问这样我能得到异常信息吗?
我现在就是自定义的exception,
public class ServiceException extends Exception{ private static final long serialVersionUID = 1L;
public ServiceException(){
}
public ServiceException(String msg){
super(msg);
}
public ServiceException(String msg, Throwable ex){
super(msg, ex);
}
public ServiceException(Throwable ex){
super(ex);
}
}这是我的类,因为项目框架的关系 整个项目都没用到try...catch,全是用throw ,怎样才能得到异常消息呢