使用Validate.notNull()时是否可以更改或包装异常

时间:2019-06-26 17:30:17

标签: java apache-commons

我正在谈论验证 Apache Commons lang中的API,在documentation

中看不到任何内容

我知道以下是可能的

try { Validate.notNull(object) } catch (NullPointerException ex) { throw MyCustomException(ex) }

但是我正在寻找比整个try / catch块更简单的东西。

2 个答案:

答案 0 :(得分:2)

  1. 您可以这样写:
Validate.notNull(data, "Data cannot be null");

但是您的消息将仅收到NullPointerException。这已在此处(文章顶部)进行了描述:http://commons.apache.org/proper/commons-lang/javadocs/api-3.9/org/apache/commons/lang3/Validate.html

  

无效的null参数会导致NullPointerException。

没有更简单的方法了。

  1. 或者您可以使用“可选”。例如:
        Optional<UserEntity> userOptional = userService.findByUsername(username);
        userOptional.orElseThrow(() -> new UsernameNotFoundException("No user found with username " + username));

答案 1 :(得分:1)

经过一段时间的研究,我们可以得出结论: