JSON
动态查询时,需要的条件本应是null,前端传入的是" "
//null转换为""
private static ValueFilter filter = (obj, s, v) -> {
if (v == "") {
return null;
}
return v;
};
//json 原传入的jsonobject
String s = JSON.toJSONString(json, filter);
JSONObject jsonObject = JSONObject.parseObject(s);
JSONObject属性值空指针处理
getObjVal(jsonVal.get("Name"));
/**
* 普通方法
* @Title: getMobile
* @Description:JSON空指针异常处理
* @date 2019-09-09 10:42
* @param @param object
* @param @return 参数
* @return String 返回类型
* @throws
* @return String
* @param object
* @return
*/
private static String getObjVal(Object object) {
if(object==null) {
return "null";
}
return object.toString();
}
JSON序列化:
Fastjson的SerializerFeature序列化属性
QuoteFieldNames———-输出key时是否使用双引号,默认为true
WriteMapNullValue——–是否输出值为null的字段,默认为false
WriteNullNumberAsZero—-数值字段如果为null,输出为0,而非null
WriteNullListAsEmpty—–List字段如果为null,输出为[],而非null
WriteNullStringAsEmpty—字符类型字段如果为null,输出为”“,而非null
WriteNullBooleanAsFalse–Boolean字段如果为null,输出为false,而非null
StringUtils
StringUtils 方法的操作对象是 Java.lang.String 类型的对象,是 JDK 提供的 String 类型操作方法的补充,并且是 null 安全的(即如果输入参数 String 为 null 则不会抛出 NullPointerException ,而是做了相应处理,例如,如果输入为 null 则返回也是 null 等,具体可以查看源代码)。
除了构造器,StringUtils 中一共有130多个方法,并且都是 static 的,所以我们可以这样调用 StringUtils.xxx()
StringUtils.substringBeforeLast(hrmdepartment.getDepartmentcode(), ".")//截取最后一个点