解决方案 »

  1.   


    异常分为两种:
    一种是检查式异常就是我们写程序时必须try,catch,比如IOException
    另一种就是运行时异常,是可以不捕获的 比如NullPonterException
    而DataAccessException就是RuntimeExcption的子类,也就是运行时异常!
      

  2.   

    图2中调用的就是图1的flush方法,而图1的flush()方法有抛出异常,当调用的时候应该需要捕获或抛出异常,
    可是图2调用时却没有。这个是hibernate低层代码
      

  3.   


    我说了异常分两种啊!一种编译式异常,是需要我们编写代码时就处理的也就是需要try,catch或者thorws出去!
    另一种运行期异常,继承RuntimeExceptino,可以编写代码时处理也可以不处理!所以你调用的时候可以不处理啊!