java中如何获取throws抛出的异常,并且把异常打印到指定的jsp页面

如题所述

比如你又一个方法叫a,调用了一个方法b(b方法throws了一个异常),那么在a里面使用try-catch捕获这个异常,在catch块里面,使用jsp的request,或者session将异常对象e.getMessage的内容存储到制定的变量里面(例如request.setAttribute("errorMessage",e.getMessage));
然后到页面使用EL表达式${errorMessage}取出来就好了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-09
try(
)
catch ()
捕获到异常以后,String s=exception.toString(). 就得到了异常的字符串。然后可以通过Servlet将这个字符串作为变量传入指定页面,然后再在指定页面用JSP输出即可.追问

其实我想做的是通过thows抛出异常,然后写一个异常类来处理异常,但是不知道怎么写,求详细代码,谢谢

追答

/*自定义异常*/

class ChushulingException extends Exception

{

public ChushulingException(String msg)

{

super(msg);

}

}

class ChushufuException extends Exception

{

public ChushufuException(String msg)

{

super(msg);

}

}

/*测试自定义异常*/

class Numbertest

{

public int shang(int y) throws ChushulingException {

if(y<0)

{
//抛出异常

throw new ChushufuException("您输入的是"+y+",规定除数不能为负数!");

}

return m;

}

}

class Rt001

{

public static void main(String[]args)

{

Numbertest n=new Numbertest();

//捕获异常

try

{

System.out.println("商="+n.shang(1,-3));

}

catch(ChushulingException yc)

{

System.out.println(yc.getMessage());

yc.printStackTrace();

}

finally{ System.out.println("finally!");} ////finally不管发没发生异常都会被执行

}

}

第2个回答  推荐于2017-09-08
我去,这件事儿好像tomcat自己就办了。

你硬要自己做一个显示异常的jsp,做个带有<%@ page isErrorPage="true"%>的页面显示。
如果要做一个只显示错误信息又不作为异常处理页面的jsp,就在java的catch里面把exception对象存到request里,然后拿到jsp后打印错误信息追问

如何写一个异常类来处理throw抛出的异常呢!初学者求详细解答

追答

你抛出来的不就是异常嘛,还写什么异常类呐?
一般情况下我们就try-catch一下,捕获到这个异常之后根据情况处理一下就ok,比如写错误日志,或者让程序做什么响应,倒是没有做什么特殊的类来干这件事儿

追问

写一个异常类!方便管理啊!能不能写一个异常类啊,然后捕获throw抛出的异常,谢谢

追答

写类可以,你可以写一个通用的类用于处理异常,比如写日志或者什么的。但捕获异常是用catch语法,跟类没什么关系啦。

追问

能为我写一个简单的列子吗!写一个异常类,然后怎么调用异常类,谢谢啦

追答

比如你有一个方法
public static void abc() throws NullPointerException{}
在main方法里
public static void main(String[] args){
try {
abc();
} catch (NullPointerException ex){
ExceptionProcess ep = new ExceptionProcess(ex); //这就是你说的异常类
}
}
这个类
public class ExceptionProcess{
private Exception ex;
public ExceptionProcess(Exception ex){} 构造方法,内容就不写了
public void process(){
//调用jdbc存储ex的错误信息
}
}

本回答被提问者采纳
第3个回答  2015-12-02
你可以用一个 DataSet类,来保存结果,类结构这样
{state:状态,message:"你需要返回的信息,比如异常",data:你的数据}
将你的结果写到这个DataSet中,转换成json格式,传到前台直接获取就行。
第4个回答  2015-11-22
Java异常均通过catch捕获, 比如 Catch(Exception e).这个里面的e就是捕获的异常信息,将这个消息打印出来就可以了啦