[CLASS]org.apache.commons.lang.builder.ToStringBuilder

http://commons.apache.org/lang/api-2.5/org/apache/commons/lang/builder/ToStringBuilder.html

This class enables a good and consistent toString() to be built for any class or object. This class aims to simplify the process by:

  • allowing field names
  • handling all types consistently
  • handling nulls consistently
  • outputting arrays and multi-dimensional arrays
  • enabling the detail level to be controlled for Object and Collections
  • handling class hierarchies

Method Summary

  • reflectionToString(Object object)

Uses reflectionToString to generate a toString with the specified object; 

  • reflectionToString(Object object, ToStringStyle style)
Uses reflectionToString to generate a toString with the specified object;
public static void main(String[] args) {
        View dto = new View();
        dto.uid = "iphone5555555555";
        dto.birthday = DateUtils.strtotime("19851213");
        dto.height = 165;
        dto.emailEggValid = MailSendStatusType.SEND;

        dto.unsignDate = null;
        List<String> list = new ArrayList<String>();
        list.add("test1");
        list.add("test2");
        dto.list = list;

        String aa = ToStringBuilder.reflectionToString(dto, ToStringStyle.DEFAULT_STYLE);
        // Test$View@6345e044[uid=iphone5555555555,birthday=Fri Dec 13 00:00:00 CST 1985,height=165,emailEggValid=SEND,unsignDate=<null>,list=[test1, test2]]
        aa = ToStringBuilder.reflectionToString(dto, ToStringStyle.MULTI_LINE_STYLE);
        // Test$View@33dff3a2[
        //  uid=iphone5555555555
        //  birthday=Fri Dec 13 00:00:00 CST 1985
        //  height=165
        //  emailEggValid=SEND
        //  unsignDate=<null>
        //  list=[test1, test2]
        // ]
        aa = ToStringBuilder.reflectionToString(dto, ToStringStyle.NO_FIELD_NAMES_STYLE);
        // Test$View@86c347[iphone5555555555,Fri Dec 13 00:00:00 CST 1985,165,SEND,<null>,[test1, test2]]
        aa = ToStringBuilder.reflectionToString(dto, ToStringStyle.SHORT_PREFIX_STYLE);
        // Test.View[uid=iphone5555555555,birthday=Fri Dec 13 00:00:00 CST 1985,height=165,emailEggValid=SEND,unsignDate=<null>,list=[test1, test2]]
        aa = ToStringBuilder.reflectionToString(dto, ToStringStyle.SIMPLE_STYLE);
        // iphone5555555555,Fri Dec 13 00:00:00 CST 1985,165,SEND,<null>,[test1, test2]
        Style style = new Style();
        aa = ToStringBuilder.reflectionToString(dto, style);
        // Test$View@86c347[uid=iphone5555555555,birthday=1985-12-13,height=165,emailEggValid=SEND,unsignDate=<null>,list=[test1, test2]]
        System.out.println(aa);
    }

    public static class Style extends StandardToStringStyle {
        protected void appendDetail(StringBuffer buffer, String fieldName, Object value) {
            if (value instanceof Date) {
                value = new SimpleDateFormat("yyyy-MM-dd").format(value);
            }
            buffer.append(value);
        }
    }

    public static class View {
        public String uid;

        public Date birthday;

        public int height;

        public MailSendStatusType emailEggValid;

        public Date unsignDate;

        public List<String> list;

    }



你可能感兴趣的:(object,list,String,null,iPhone,Class)