我们有基于AWT的应用程序从DB获取值。将Java6升级到8。 在申请中的一个地方,我们正在尝试处理例外情况,如下所示 -
这部分适用于Java6。但是对于Java8,即使SQLState =“23000”和VendorCode = 2292,if条件也会失败。我在eclipse中调试并在运行时获得了值。
我还想补充一点;在Java8中,我得到了SQLIntegrityConstaintViolationException。但是,我希望这不相关或导致问题。
catch (SQLException ex)
{
if ((ex.getSQLState() == "23000") && (ex.getErrorCode() == 2292))
throw new PersistentValidationException("DBCustomer: Delete restricted",ex);
else
throw new PersistentUIException(" DBCustomer:delete --- " +
"SQL error occurred.",ex);
}
任何建议