我有一个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;
}
assertNonNegative
课程中的assertNotNull
和TestUtils
方法就像这样 -
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");
}
}
我想知道在任何开源项目中是否有可用的验证API,我可以用它代替上面的内部方法?如果是的话,任何人都可以举例说明我将如何实现这一目标?我仍然需要将相同的消息作为IllegalArgumentException
返回答案 0 :(得分:0)
我不明白为什么你会使用外部API tu实现nullOrEmpty或非负数验证但是......
如果您想直接在Java应用程序中验证数据库中用户的ID
您可能会对此感兴趣: http://www.mkyong.com/java/how-to-send-http-request-getpost-in-java/
使用一点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;
}
}
现在,如果您对网址www.mydomain.com/myapi.php?idcmd=1发出POST请求并获得很酷的响应,则表示该用户位于数据库中。
我希望它有所帮助。