Class BeanDesc

java.lang.Object
org.aoju.bus.core.beans.BeanDesc
All Implemented Interfaces:
Serializable

public class BeanDesc extends Object implements Serializable
Bean信息描述做为BeanInfo替代方案 此对象持有Bean中的setters和getters等相关信息描述 查找Getter和Setter方法时会:
 1. 忽略字段和方法名的大小写
 2. Getter查找getXXX、isXXX、getIsXXX
 3. Setter查找setXXX、setIsXXX
 4. Setter忽略参数值与字段值不匹配的情况,因此有多个参数类型的重载时,会调用首次匹配的
 
Since:
Java 17+
Author:
Kimi Liu
See Also:
  • Constructor Details

    • BeanDesc

      public BeanDesc(Class<?> beanClass)
      构造
      Parameters:
      beanClass - Bean类
  • Method Details

    • getName

      public String getName()
      获取Bean的全类名
      Returns:
      Bean的类名
    • getSimpleName

      public String getSimpleName()
      获取Bean的简单类名
      Returns:
      Bean的类名
    • getPropMap

      public Map<String,PropertyDesc> getPropMap(boolean ignoreCase)
      获取字段名-字段属性Map
      Parameters:
      ignoreCase - 是否忽略大小写,true为忽略,false不忽略
      Returns:
      字段名-字段属性Map
    • getProps

      public Collection<PropertyDesc> getProps()
      获取字段属性列表
      Returns:
      PropertyDesc 列表
    • getProp

      public PropertyDesc getProp(String fieldName)
      获取属性,如果不存在返回null
      Parameters:
      fieldName - 字段名
      Returns:
      PropertyDesc
    • getField

      public Field getField(String fieldName)
      获得字段名对应的字段对象,如果不存在返回null
      Parameters:
      fieldName - 字段名
      Returns:
      字段值
    • getGetter

      public Method getGetter(String fieldName)
      获取Getter方法,如果不存在返回null
      Parameters:
      fieldName - 字段名
      Returns:
      Getter方法
    • getSetter

      public Method getSetter(String fieldName)
      获取Setter方法,如果不存在返回null
      Parameters:
      fieldName - 字段名
      Returns:
      Setter方法