我有一个Java应用程序,它查询当前用户帐户可能或不可以访问的数据库表。如果返回异常,我想区分AccessDenied和数据库服务器正在关闭/脱机。我期望当用户在表上没有选择特权时,db2会抛出PermissionDeniedDataAccessException。但是,当我测试它时,db2抛出了一个InvalidDataAccessResourceUsageException异常。Db2 9抛出InvalidDataAccessResourceUsageException而不是PermissionDeniedDataAccessException
捕获InvalidDataAccessResourceUsageException并将其作为AccessDenied异常处理是否安全?为什么db2不会抛出PermissionDeniedDataAccessException?
仅供参考:我正在使用db2的JDBC驱动程序,而不是ODBC驱动程序,所以我期望更好的Java支持。
我其实并不知道我可以在Spring中创建自己的异常捕获器。这将让我通过捕获特定的sqlcodes来做到这一点。 – David 2010-01-14 17:00:58