获取null时如何抛出异常

时间:2017-06-26 10:54:33

标签: java exception

当我想在数据库中创建订单时。我需要通过goodNo找到好的名称.goodNo是客户提供商。但是goodNo不在我的数据库中。所以,当它返回时我得到一个空值。我应该抛出什么样的异常?IllegalAugementException?NullPointException?还是其他?

2 个答案:

答案 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);
    }
}