在三层结构中处理异常,一般是DAO层抛出DatabaseException,在service层抛出自定义的业务异常ApplicationException,最后在action中捕获异常通知用户。
在这值得一提的是在service中抛出业务异常最好继承RuntimeException。因为事务一般放在service层,如果抛出的是checked异常,事务不会回滚,这是spring的特性。spring抛出的unchecked异常。
在三层结构中处理异常,一般是DAO层抛出DatabaseException,在service层抛出自定义的业务异常ApplicationException,最后在action中捕获异常通知用户。
在这值得一提的是在service中抛出业务异常最好继承RuntimeException。因为事务一般放在service层,如果抛出的是checked异常,事务不会回滚,这是spring的特性。spring抛出的unchecked异常。