本文共 2407 字,大约阅读时间需要 8 分钟。
当我们在实际开发中,经常需要对后台返回的数据 entity 实例进行调试的时候重写toString 方法来输出日志而我们的编辑器Studio(IDEA) 默认的模板不是 json 格式化的,于是在日志调试时查看起来不是很方便,于是乎有了这篇文章的存在
点击 toString() 出现该类中需要转换的变量的 弹窗,选择右上角的 Settings
切换标签到Templates 并点击 + 号新建一个模板
点击 + 号后弹窗,输入新模板的名称(String toJsonString)点击 OK
创建完模板后在左侧栏目点击新创建的模板名称将以下代码输入到右侧
public java.lang.String toString() { #if ( $members.size() > 0 )#set ( $i = 0 ) return "{\"$classname\": {" +#foreach( $member in $members )#if ( $i == 0 ) "###else ", ###end#if ( $member.objectArray )#if ($java_version < 5)\"$member.name\":" + ($member.accessor == null ? null : java.util.Arrays.asList($member.accessor)) +#else\"$member.name\":" + java.util.Arrays.toString($member.accessor) +#end#elseif ( $member.primitiveArray && $java_version >= 5)\"$member.name\":" + java.util.Arrays.toString($member.accessor) +#elseif ( $member.string )\"$member.name\": \"" + $member.accessor + '\"' +#else\"$member.name\":" + $member.accessor +#end#set ( $i = $i + 1 )#end "}}";#else return "\"$classname\":{}";#end}
输入之后应用确定即可
public java.lang.String toString() { #if ( $members.size() > 0 )#set ( $i = 0 ) return "{\"$classname\":{" +#foreach( $member in $members )#if ( $i == 0 ) "###else ", ###end#if ( $member.objectArray )#if ($java_version < 5)\"$member.name\":" + ($member.accessor == null ? null : java.util.Arrays.asList($member.accessor)) +#else\"$member.name\":" + java.util.Arrays.toString($member.accessor) +#end#elseif ( $member.primitiveArray && $java_version >= 5)\"$member.name\":" + java.util.Arrays.toString($member.accessor) +#elseif ( $member.string )\"$member.name\": \"" + $member.accessor + '\"' +#else\"$member.name\":" + $member.accessor +#end#set ( $i = $i + 1 )#end #if ( $class.hasSuper ) "} " + super.toString(); #else "}}"; #end#else #if ( $class.hasSuper ) return "\"$classname\":{} " + super.toString(); #else return "\"$classname\":{}"; #end#end}
转载地址:http://qhvrj.baihongyu.com/