package com.gustz.dove.cli.api.service.vo; import java.io.Serializable; import java.lang.reflect.Field; /** * * TODO: Client base VO * * @author ZHENFENG ZHANG * @since [ Aug 16, 2015 ] */ public abstract class AbstCliBaseVo implements Serializable { private static final long serialVersionUID = 1L; /** * VO to string */ @Override public String toString() { return toString(this); } /** * To string * * @param obj * @return */ private static String toString(final Object obj) { Class<?> clazz = obj.getClass(); StringBuilder sbd = new StringBuilder(clazz.getName()); sbd.append("@").append(clazz.hashCode()); try { sbd.append("["); int i = 0; Field[] fields = clazz.getDeclaredFields(); for (Field field : fields) { if (i > 0) { sbd.append(", "); } field.setAccessible(true); sbd.append(field.getName()); sbd.append("="); sbd.append(field.get(obj)); i++; } sbd.append("]"); } catch (Exception e) { //ignore exception } return sbd.toString(); } }