Java 如何通过验证API验证某些输入参数?

Java 如何通过验证API验证某些输入参数?,java,validation,apache-commons,Java,Validation,Apache Commons,我有一个API,在其中我自己对某些输入参数进行验证。例如— public Builder(int clientId) { TestUtils.assertNonNegative(clientId, "ClientId"); this.clientId = clientId; } public Builder setUserId(String userid) { TestUtils.assertNotNull(userid,

我有一个API,在其中我自己对某些输入参数进行验证。例如—

    public Builder(int clientId) {
        TestUtils.assertNonNegative(clientId, "ClientId");
        this.clientId = clientId;
    }

    public Builder setUserId(String userid) {
        TestUtils.assertNotNull(userid, "UserId");
        this.userid = userid;
        return this;
    }
TestUtils
类中,我的
assertNonNegative
assertNotNull
方法如下-

public static void assertNonNegative(int val, String attr) {
    if (val <= 0) {
        s_logger.logError("Attribute = ", attr, " Value = ", val, " error=", attr, " cannot be negative or zero");
        throw new IllegalArgumentException(attr + " cannot be negative or zero");
    }
}

public static void assertNotNull(String value, String key) {
    if (value == null || value.isEmpty()) {
        s_logger.logError("Key = ", key, " Value = ", value, " error=", key,
                " cannot be NULL or empty String");
        throw new IllegalArgumentException(key + " cannot be null OR empty");
    }
}
publicstaticvoidassertnonnegative(int-val,stringattr){

如果(val我不明白为什么要使用外部API实现空空或非负数验证,但是

如果您想直接在Java应用程序中验证数据库中用户的id

这可能会让您感兴趣:

使用一点PHP并验证用户是否在数据库中

if(isset($_GET['idcmd']))
{
    switch($_GET['idcmd'])
    {
        case 1:
                if(isset($_POST['iduser']))
                {
                    $sql= "SELECT idUser FROM users WHERE idUser=:iduser ";
                    $result = $db_conn->prepare($sql);
                    $result->bindParam(":iduser" ,$_POST['iduser']);
                    $result->execute();

                    $num=$result->fetchColumn();
                    if($num > 0){
                        echo "cool";
                    }else{
                        echo "nocool";
                    }
                }
        break;
    }
}
现在,如果您向url www.mydomain.com/myapi.php?idcmd=1发出POST请求,并得到很酷的响应,则表示用户在数据库中

if(isset($_GET['idcmd']))
{
    switch($_GET['idcmd'])
    {
        case 1:
                if(isset($_POST['iduser']))
                {
                    $sql= "SELECT idUser FROM users WHERE idUser=:iduser ";
                    $result = $db_conn->prepare($sql);
                    $result->bindParam(":iduser" ,$_POST['iduser']);
                    $result->execute();

                    $num=$result->fetchColumn();
                    if($num > 0){
                        echo "cool";
                    }else{
                        echo "nocool";
                    }
                }
        break;
    }
}
我希望有帮助