网上查了一些实体类生成json的toString模板,但是都没有对属性值进行非空判断,导致二次解析数据异常的问题。故稍做修改添加了非空判断模块
1、添加JSONTemplat ,首先使用Alt+Insert 调起功能面板,选择toString()后,选择SERRTTING
2、点击Templates切换到模板类型,然后点击加号,添加JSONTemplate。然后复制下面文本模板。
public java.lang.String toString() {
final java.lang.StringBuilder sb = new java.lang.StringBuilder("{");
#set ($i = 0)
#foreach ($member in $members)
if(null!=$member.name){
#if ($i == 0)
sb.append("#####
#else
sb.append(",####
#end
#if ($member.string || $member.date)
\"$member.name\":\"")
#else
\"$member.name\":")
#end
#if ($member.primitiveArray || $member.objectArray)
.append(java.util.Arrays.toString($member.name));
#elseif ($member.string || $member.date)
.append($member.accessor).append('\"');
#else
.append($member.accessor);
#end
#set ($i = $i + 1)
}
#end
sb.append('}');
return sb.toString();
}
最后一步,因为首项的特殊原因,需要手动初始化为空时候的状态