这几日发生了几个错误,都是 Java 基础问题。
1.类型转换错误
从 Map<String,Object> params 是一个中间平台获取前端请求后解析出的一个键值对对象,值可以是另外的对象。
设前端传入的参数对:status : 1。中间平台有可能插入到 params 中的是:("status",1) 也可能是 ("status","1")。在前一种情况下,若这样取出 status 的值则可能发生错误:
String status = (String)params.get("status"); // Integer can't cast to String
因此,为避免这种错误,应这样取出:String status = String.valueOf(params.get("status"));
但是,要注意String.valueOf(null) 的结果是 "null",此处要注意。
2.遍历 null 对象错误
拿到 List<String> params 后直接遍历可能发生 NullPointerException。
for(String p : params)...
为避免这种错误,应要先判断一下是否为 null。