Java BeanUtils - 概述



描述

Java BeanUtils 是 Apache Commons 的组件,它源自 Java API,并为 Java 语言提供了组件架构。Java BeanUtils 设计模式使用实用程序类,这些类有助于获取和设置 Java 类上的属性值,从而检索和定义 Bean 属性。

org.apache.commons.beanutils 包包含名为 introspection 的工具,该工具有助于在 Java 类上获取和设置属性值,并在开发工具中以可视化方式显示它们。

JavaBeans 特性

以下是 JavaBeans 的重要特性,这些特性在开发结构中非常有用:

  • 该类应为 public,并提供一个没有参数的公共构造函数。它允许工具和应用程序动态创建 Bean 的新实例,而无需知道将使用哪种 Java 类名,如下所示:

    String className = ...;
    Class beanClass = Class.forName(className);
    Object beanInstance = beanClass.newInstance();
    
  • 没有参数的构造函数,其 Bean 的行为可以与其实例化分开配置。这可以通过使用 Bean 的属性来实现,也可以用来修改 Bean 显示的行为或数据。

  • Bean 属性包含用于访问属性值的 settergetter 方法。这些属性的设计模式可以通过使用属性名称的 setget 前缀来指定,并使用 JavaBeans 规范将第一个字符大写。例如,您可以为属性 first_namelast_name 使用 settergetter 方法,如下所示:

    public class Employee {
       public Employee();   // Zero-arguments constructor
       public String getFirstName();
       public void setFirstName(String first_name);
       public String getLastName();
       public void setLastName(String last_name);
       public String getFullName();
    }
    
  • 如果属性名称存在 gettersetter 方法,则 getter 应与 setter 数据类型匹配。在 JavaBean 规范中,您可以拥有多个名称相同但属性类型不同的 setter

  • 无需为每个属性定义 gettersetter 方法。在上面的代码中,fullName 属性没有 setter 方法,它只是一个只读属性。

  • 您可以创建一个 JavaBean,其中没有命名模式的匹配项,方法是使用 gettersetter 方法。Java 中的 JavaBean 支持类和 BeanUtils 包可以使用 BeanInfo 类以及 Bean 类来指定属性方法名称。

  • JavaBeans 规范为事件侦听器提供了设计模式,将 JavaBeans 组合到组件层次结构中,以及 BeanUtils 包的其他有用功能。

外部依赖

您可以为 commons-beanutils 包使用以下外部依赖项:

广告