Java 如果字符串为null或为空或任何值,则对其进行验证
这是一个场景,我正在进行一个API调用,如果我向字符串字段传递null值或任何值,该调用将提供一些随机值。下面是APIJava 如果字符串为null或为空或任何值,则对其进行验证,java,Java,这是一个场景,我正在进行一个API调用,如果我向字符串字段传递null值或任何值,该调用将提供一些随机值。下面是API @RequestMapping(value = "/employee/details", method = GET) public void getEmployeeDetails(@RequestParam(value = "employeeSalCode", required = false) String employeSalcode @RequestParam(valu
@RequestMapping(value = "/employee/details", method = GET)
public void getEmployeeDetails(@RequestParam(value = "employeeSalCode", required = false) String employeSalcode
@RequestParam(value = "employeeId", required = false) String employeId );
现在,我们已经删除了基于employeesalcode获取员工详细信息的功能。但是,当使用任何空值或任何字符串调用API时,API会返回一些随机值
我想对员工代码进行验证检查,如下所示
if(isNull(employeeSalcode) || isEmpty(employeeSalCode)){
System.out.println("Sorry Employee details by salcode is deprecated");
}
如果传递了值,则再次执行此操作
if(nonNull(employeeSalcode)){
System.out.println("Sorry Employee details by salcode is deprecated");
}
现在我的验证看起来很奇怪,因为我同时验证null和nonnull。无论如何,我都可以在这些条件下验证字符串。使用这个,在我们的api调用中,数据可能包含空字符串。 所以我在C类中声明了最后一个静态空字符串。 现在在我的util类中检查空字符串的所有条件
class C {
public static final String NULL_STR = "null";
}
public static boolean isStrEmpty(String str) {
return str == null || str.isEmpty()
|| str.toLowerCase().equals(C.NULL_STR);
}
第二个、第三个和第四个条件是等价的,因此其中两个条件是多余的。或者将字符串转换为小写以将其与空字符串进行比较,特别是当我们已经知道它此时不可能是空的,并且已经测试了两次。空字符串不区分大小写。代码完全是胡说八道。你检查过代码的条件吗。。。。为什么要将字符串转换为小写以检查它是否为空???实际上,创建此方法的目的不同。有时我们的api可以发送这样的空字符串。数据库中的name=“null”。这就是为什么我检查了所有可能的标准。当它以字符串形式包含“null”时,上面的代码可以正常工作:)@RequestMapping(value=“/employee/details/{param1}/{param2}”,method=GET)使用变量值而不是param valueok deprecated听起来很棒!