当我想在数据库中创建订单时。我需要通过goodNo找到好的名称.goodNo是客户提供商。但是goodNo不在我的数据库中。所以,当它返回时我得到一个空值。我应该抛出什么样的异常?IllegalAugementException?NullPointException?还是其他?
答案 0 :(得分:1)
当它是一个有效的用例(不在db中的项目)时,我会阻止使用异常。相反,我建议考虑使用Optional作为返回值。这表明方法的结果可能是空的。
选中此选项可查看包含类似示例http://blog.jhades.org/java-8-how-to-use-optional/
的博客答案 1 :(得分:0)
你可以使用一般的例外: DaoException
例如:
public String Method(String atr, double atr2) throws DAOException {
try {
/*you SQL Query*/
} catch (Exception e) {
logger.error("[" + methodName + "] Error: ", e);
new DAOException( e);
} finally {
close(methodName, rs, stmt, conn);
}
}