zoukankan      html  css  js  c++  java
  • Spring工具类ToStringBuilder用法简介

    转载:跳转

    简单介绍:

    1、项目中一般都需要打印日志,所有实体的toString()方法都是用简单的"+",因为每"+" 一个就会 new 一个 String 对象,这样如果系统内存小的话会暴内存。使用ToStringBuilder就可以避免暴内存这种问题。

    ToStringBuilder的reflectionToString方法:

      logger.info("请求数据:"+ToStringBuilder.reflectionToString(req));

    2、ToStringBuilder在包 common-lang 中,主要用于一个类的格式化输出。ToStringBuilder类中的append方法可以向该类添加基本类型、数组和对象 ,只有添加的方法才会被toString方法输出。

            ToStringStyle类则是对输出的内容进行格式化。

    使用例子:

     package test;
    
        public class User {
    
            private String name;
            private int age;
    
            public String getName() {
                return name;
            }
    
            public void setName(String name) {
                this.name = name;
            }
            
            public int getAge() {
                return age;
            }
           
            public void setAge(int age) {
                this.age = age;
            }
      }
    
    下面是ToStringBuilder的使用方法
    
      System.out.println("-------------ToStringBuilder-------------------------");
    
        User u = new User();
    
        u.setAge(25);
    
        u.setName("zhengtian");
    
        
    
      //对象及其属性一行显示
    
        System.out.println(ToStringBuilder.reflectionToString(u));
    
        System.out.println(ToStringBuilder.reflectionToString(u, ToStringStyle.DEFAULT_STYLE));
    
        //属性换行显示
    
        System.out.println(ToStringBuilder.reflectionToString(u, ToStringStyle.MULTI_LINE_STYLE));
    
        //不显示属性名,只显示属性值,在同一行显示
    
        System.out.println(ToStringBuilder.reflectionToString(u, ToStringStyle.NO_FIELD_NAMES_STYLE));
    
        //对象名称简写
    
        System.out.println(ToStringBuilder.reflectionToString(u, ToStringStyle.SHORT_PREFIX_STYLE));
    
        //只显示属性
    
        System.out.println(ToStringBuilder.reflectionToString(u, ToStringStyle.SIMPLE_STYLE));
    
    结果显示:
    
    -------------ToStringBuilder-------------------------
    
    test.User@141d683[name=zhengtian,age=25]
    
    test.User@141d683[name=zhengtian,age=25]
    
    test.User@141d683[
    
      name=zhengtian
    
      age=25
    
    ]
    
    test.User@141d683[zhengtian,25]
    
    User[name=zhengtian,age=25]
    
    zhengtian,25
    
    描述:ToStringBuilder比较适合在打日志时,输出参数的信息,特别是在参数为对象时,该工具类能够很方便的自动打印对象中的属性值
    

      maven包引入:

    1 <dependency>
    2     <groupId>org.apache.commons</groupId>
    3     <artifactId>commons-lang3</artifactId>
    4     <version>3.4</version>
    5 </dependency>        
  • 相关阅读:
    WEB新手之sql注入
    WEB新手之do u know caidao?
    C#发送邮件三种方法,Localhost,SMTP,SSL-SMTP
    利用SMTP发送Mail详解
    DevExpress GridControl List绑定方式下新增行的方法
    技术收藏书签
    Oracle CONNECT BY 用法
    在 Oracle Database 11g 第 2 版中查询层次结构数据的快速入门
    Jquery选择器(转载)
    MVC 验证
  • 原文地址:https://www.cnblogs.com/myknow/p/9234049.html
Copyright © 2011-2022 走看看