jsp中一般都不用捕捉,而javabean,servlet中必须捕捉。

解决方案 »

  1.   

    Error及其子类不需要捕捉,因为程序中有很多地方都会产生这样的异常(错误),对程序员来说,如果每一个都处理,几乎是不可能的。
    RuntimeException及其子类不需要捕捉,因为Java语言的设计者认为声明这样的得异常对保证程序的正确性意义不大。而且与Error一样,很多地方都会产生这样的异常。
    以上内容摘自Java语言规范《the java language specification》。
      

  2.   

    如果是你自己写的方法,并且没有调用别的方法的话,就看你自己有没有在方法里面写throw new Exception();了,如果写了的话,就要在方法定义的时候声明throws Exception,表示有可能会有异常产生。那么其他方法调用了你这个方法的话,就必须要考虑到异常产生的情况,jsp,servlet...都是如此!
    同理,当你调用一个别人的方法的时候,也要注意看看这个方法在定义的时候有没有声明throws Exception,如果有的话,那么你必须也要考虑这种情况。要么是用try{}catch{}来捕捉,在自己的方法里面处理这些异常,要么继续向外抛(自己的方法也声明为throws Exception),让再外面一层去处理。