java preconditions_Java Web开发入门(10)—— 使用Precondition简化代码

Java编程有各种各样的现成工具,可以简化代码,减少代码规模,使核心逻辑更清晰明确。本篇介绍这样一个很简单的工具Precondition。

下面以入参检查为例,介绍一下Preconditions的用法。

入参检查

在编程中,设计的函数如果有输入参数的话,如果是对外接口的话,往往需要验证输入参数的合法性,最基本的,输入的reference类型不能为空。例如:

public long createKingmai(

UserLoginInfoDto userInfo,

KingmaiReqDto kingmaiReqDto

) throws KingmaiException {

if (userInfo == null) {

log.error("userInfo must NOT be null to create Kingmai.");

return -1; // return negative value means failure here }

if (kingmaiReqDto == null) {

log.error("kingmaiReqDto must NOT be null to create Kingmai.");

return -1;

}

……

这样写是OK的,但是会导致上层调用者很难区分“-1”背后的具体原因。如果通过return不同的值来表征不同的失败原因的话,例如,-1:userInfo为空;-2:kingmaiReqDto为空;-3:……就会导致有一个具体数字到失败原因的映射

你可能感兴趣的:(java,preconditions)