ToStringBuilder比较适合在打日志时,输出参数的信息,特别是在参数为对象时,该工具类能够很方便的自动打印对象中的属性值。
不多说,先上代码:
比如说我们需要打印某个方法的User参数对象
package test;
/**
*
* @author zhengtian
* @time 2012-6-28
*/
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
分享到:
相关推荐
为了解决这个问题,Apache Commons Lang库提供了一个实用工具类`ToStringBuilder`。它简化了`toString()`的构建过程,允许我们以更简洁的方式构造字符串。使用`ToStringBuilder`的例子如下: ```java public String...
在自定义类的`toString()`方法时,可以使用`ToStringBuilder`和`ReflectionToStringBuilder`,它们接受`ToStringStyle`作为参数,生成不同风格的`toString()`输出。 使用Apache Commons Lang的工具类可以提高代码的...
下面我们将深入探讨ToStringBuilder类的使用方法和技巧。 ToStringBuilder是包`org.apache.commons.lang3.builder`中的一个类,它的主要功能是帮助我们构建对象的toString方法,以优雅地展示对象的状态。在没有...
Java组件开发(1)ToStringBuilder
Lang包是Apache Jakarta Common项目中被使用最广泛的Java工具包之一,其中包含了许多实用的工具类,可以帮助开发者快速开发和维护Java应用程序。下面将对Lang包下的常用工具类进行介绍。 1. ClassUtils类: Class...
这个库是Java编程语言中一个非常重要的工具集,它提供了许多实用的类和方法,以增强Java标准库的功能。Apache Commons Lang是Apache软件基金会的一个开源项目,旨在帮助开发者解决日常编程任务。 描述中的...
Apache Commons Lang是Java开发中的一个非常重要的开源工具库,它提供了一系列实用的工具类,极大地丰富了Java的标准库,为开发者提供了更便捷、高效的方法来处理常见的编程任务。Lang包主要包含了对字符串操作、...
Apache Commons是一系列开源的Java通用工具类库,提供了很多常用的工具类和方法,可以在项目中简化代码,提高开发效率。其内容覆盖了字符串操作、数据类型转换、集合处理、数学计算、日期和时间处理、Bean操作等众多...
Spring Boot是Spring框架的一个微服务开发工具,它简化了配置并提供了快速构建应用程序的方式。Redis则是一款高性能的键值存储系统,常用于缓存、消息队列等场景,因其内存存储特性,读写速度极快。 要实现自定义...
- ConstructorUtils和MethodUtils:提供使用反射构造对象和调用方法的工具。 - DynaBean:一个动态的Bean实现,可以处理未知属性。 4. Jakarta Commons数学和时间库 这些库提供了额外的数学和时间处理功能,包括...
除了上述提到的组件外,文档中还可能涵盖了其他工具类和方法,如时间日期工具类(**DateUtils**、**DateFormatUtils**等)、算子组(如**Predicate**、**Transformer**、**Closure**等)、数学计算工具类(**commons...
**MethodUtils** 类提供了方法调用相关的工具方法,方便动态调用Java Bean的方法。 ##### DynaBean/DynaClass/DynaProperty 这些类提供了一种动态属性的模型,允许在运行时动态地创建和修改Java Bean的属性。 ###...
- 部分工具类设计为线程安全,可以在多线程环境中直接使用。 通过 Commons Lang 这个库,Java开发者可以更加高效地处理日常编程中的各种语言级任务,提升代码质量,减少重复代码,提高开发效率。由于其广泛的适用...
在Java编程语言中,`toString()`方法是一个非常重要的工具,它允许对象转化为字符串形式,方便在控制台打印、日志...在实际开发中,可以根据项目需求选择合适的实现方式,如手动编写、使用工具类或利用Java 8的新特性。
总的来说,Apache Commons Lang是一个非常实用的Java工具库,它为开发者提供了大量便捷的类和方法,能够极大地提高开发效率并减少代码的重复。通过阅读和学习这个源码,你可以了解到如何设计和实现一个高效、可复用...
- **ClassUtils**:提供了与类相关的工具方法,如获取类名、类加载器等。 - **ObjectUtils**:提供了对象比较、转换等方法。 - **RandomStringUtils**:提供了生成随机字符串的方法。 - **SerializationUtils**:...
为了深入理解和使用`utils-beta`库,我们需要研究其源代码,了解每个工具类的用法和设计意图。在提供的压缩包`utils-beta-master`中,我们可以找到项目的主分支,它通常包含了库的所有源代码、测试用例以及相关的...
10. **代码执行**:`ReflectionToStringBuilder` 和 `ToStringBuilder` 类可以帮助生成对象的可读字符串表示,这对于调试和日志记录非常有用。 在项目中引入 `commons-lang3-3.3.2.jar`,可以通过简单的导入和调用...
Apache Commons Lang 3.6 还包含了其他很多实用工具类和方法,它们都是为了提高Java开发的效率和代码质量。这个库已经被广泛应用于各种项目中,是Java开发者的重要工具之一。通过引入Apache Commons Lang,开发者...
`Builder` 包中的类如 `ToStringBuilder`, `HashCodeBuilder` 提供了一种构建对象的toString()和hashCode()方法的简便方式,遵循了良好的编程实践。 9. **枚举工具** `EnumUtils` 提供了枚举相关的辅助方法,如...