Class BeanUtils
Utility methods for populating JavaBeans properties via reflection.
 The implementations are provided by BeanUtilsBean. These static utility methods use the default instance. More sophisticated behavior can be provided
 by using a BeanUtilsBean instance.
 
- See Also:
- 
Method SummaryModifier and TypeMethodDescriptionstatic ObjectClones a bean based on the available property getters and setters, even if the bean class itself does not implement Cloneable.static voidcopyProperties(Object dest, Object orig) Copies property values from the origin bean to the destination bean for all cases where the property names are the same.static voidcopyProperty(Object bean, String name, Object value) Copy the specified property value to the specified destination bean, performing any type conversion that is required.static <K,V> Map <K, V> Creates a cache.Return the entire set of properties for which the specified bean provides a read method.static String[]getArrayProperty(Object bean, String name) Return the value of the specified array property of the specified bean, as a String array.static StringgetIndexedProperty(Object bean, String name) Return the value of the specified indexed property of the specified bean, as a String.static StringgetIndexedProperty(Object bean, String name, int index) Gets the value of the specified indexed property of the specified bean, as a String.static StringgetMappedProperty(Object bean, String name) Return the value of the specified indexed property of the specified bean, as a String.static StringgetMappedProperty(Object bean, String name, String key) Return the value of the specified mapped property of the specified bean, as a String.static StringgetNestedProperty(Object bean, String name) Return the value of the (possibly nested) property of the specified name, for the specified bean, as a String.static StringgetProperty(Object bean, String name) Return the value of the specified property of the specified bean, no matter which property reference format is used, as a String.static StringgetSimpleProperty(Object bean, String name) Return the value of the specified simple property of the specified bean, converted to a String.static voidPopulate the JavaBeans properties of the specified bean, based on the specified name/value pairs.static voidsetProperty(Object bean, String name, Object value) Set the specified property value, performing type conversions as required to conform to the type of the destination property.
- 
Method Details- 
cloneBeanpublic static Object cloneBean(Object bean) throws IllegalAccessException, InstantiationException, InvocationTargetException, NoSuchMethodException Clones a bean based on the available property getters and setters, even if the bean class itself does not implement Cloneable. For more details see BeanUtilsBean.- Parameters:
- bean- Bean to be cloned
- Returns:
- the cloned bean
- Throws:
- IllegalAccessException- if the caller does not have access to the property accessor method
- InstantiationException- if a new instance of the bean's class cannot be instantiated
- InvocationTargetException- if the property accessor method throws an exception
- NoSuchMethodException- if an accessor method for this property cannot be found
- See Also:
 
- 
copyPropertiespublic static void copyProperties(Object dest, Object orig) throws IllegalAccessException, InvocationTargetException Copies property values from the origin bean to the destination bean for all cases where the property names are the same. For more details see BeanUtilsBean.- Parameters:
- dest- Destination bean whose properties are modified
- orig- Origin bean whose properties are retrieved
- Throws:
- IllegalAccessException- if the caller does not have access to the property accessor method
- IllegalArgumentException- if the- destor- orig</code> argument is null or if the <code>destproperty type is different from the source type and the relevant converter has not been registered.
- InvocationTargetException- if the property accessor method throws an exception
- See Also:
 
- 
copyPropertypublic static void copyProperty(Object bean, String name, Object value) throws IllegalAccessException, InvocationTargetException Copy the specified property value to the specified destination bean, performing any type conversion that is required. For more details see BeanUtilsBean.- Parameters:
- bean- Bean on which setting is to be performed
- name- Property name (can be nested/indexed/mapped/combo)
- value- Value to be set
- Throws:
- IllegalAccessException- if the caller does not have access to the property accessor method
- InvocationTargetException- if the property accessor method throws an exception
- See Also:
 
- 
createCacheCreates a cache.- Type Parameters:
- K- the key type of the cache
- V- the value type of the cache
- Returns:
- a new cache
- Since:
- 1.8.0
 
- 
describepublic static Map<String,String> describe(Object bean) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the entire set of properties for which the specified bean provides a read method. For more details see BeanUtilsBean.- Parameters:
- bean- Bean whose properties are to be extracted
- Returns:
- Map of property descriptors
- Throws:
- IllegalAccessException- if the caller does not have access to the property accessor method
- InvocationTargetException- if the property accessor method throws an exception
- NoSuchMethodException- if an accessor method for this property cannot be found
- See Also:
 
- 
getArrayPropertypublic static String[] getArrayProperty(Object bean, String name) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the specified array property of the specified bean, as a String array. For more details see BeanUtilsBean.- Parameters:
- bean- Bean whose property is to be extracted
- name- Name of the property to be extracted
- Returns:
- The array property value
- Throws:
- IllegalAccessException- if the caller does not have access to the property accessor method
- InvocationTargetException- if the property accessor method throws an exception
- NoSuchMethodException- if an accessor method for this property cannot be found
- See Also:
 
- 
getIndexedPropertypublic static String getIndexedProperty(Object bean, String name) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the specified indexed property of the specified bean, as a String. For more details see BeanUtilsBean.- Parameters:
- bean- Bean whose property is to be extracted
- name-- propertyname[index]of the property value to be extracted
- Returns:
- The indexed property's value, converted to a String
- Throws:
- IllegalAccessException- if the caller does not have access to the property accessor method
- InvocationTargetException- if the property accessor method throws an exception
- NoSuchMethodException- if an accessor method for this property cannot be found
- See Also:
 
- 
getIndexedPropertypublic static String getIndexedProperty(Object bean, String name, int index) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Gets the value of the specified indexed property of the specified bean, as a String. The index is specified as a method parameter and must *not* be included in the property name expressionFor more details see BeanUtilsBean.- Parameters:
- bean- Bean whose property is to be extracted
- name- Simple property name of the property value to be extracted
- index- Index of the property value to be extracted
- Returns:
- The indexed property's value, converted to a String
- Throws:
- IllegalAccessException- if the caller does not have access to the property accessor method
- InvocationTargetException- if the property accessor method throws an exception
- NoSuchMethodException- if an accessor method for this property cannot be found
- See Also:
 
- 
getMappedPropertypublic static String getMappedProperty(Object bean, String name) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the specified indexed property of the specified bean, as a String. For more details see BeanUtilsBean.- Parameters:
- bean- Bean whose property is to be extracted
- name-- propertyname(index)of the property value to be extracted
- Returns:
- The mapped property's value, converted to a String
- Throws:
- IllegalAccessException- if the caller does not have access to the property accessor method
- InvocationTargetException- if the property accessor method throws an exception
- NoSuchMethodException- if an accessor method for this property cannot be found
- See Also:
 
- 
getMappedPropertypublic static String getMappedProperty(Object bean, String name, String key) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the specified mapped property of the specified bean, as a String. For more details see BeanUtilsBean.- Parameters:
- bean- Bean whose property is to be extracted
- name- Simple property name of the property value to be extracted
- key- Lookup key of the property value to be extracted
- Returns:
- The mapped property's value, converted to a String
- Throws:
- IllegalAccessException- if the caller does not have access to the property accessor method
- InvocationTargetException- if the property accessor method throws an exception
- NoSuchMethodException- if an accessor method for this property cannot be found
- See Also:
 
- 
getNestedPropertypublic static String getNestedProperty(Object bean, String name) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the (possibly nested) property of the specified name, for the specified bean, as a String. For more details see BeanUtilsBean.- Parameters:
- bean- Bean whose property is to be extracted
- name- Possibly nested name of the property to be extracted
- Returns:
- The nested property's value, converted to a String
- Throws:
- IllegalAccessException- if the caller does not have access to the property accessor method
- IllegalArgumentException- if a nested reference to a property returns null
- InvocationTargetException- if the property accessor method throws an exception
- NoSuchMethodException- if an accessor method for this property cannot be found
- See Also:
 
- 
getPropertypublic static String getProperty(Object bean, String name) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the specified property of the specified bean, no matter which property reference format is used, as a String. For more details see BeanUtilsBean.- Parameters:
- bean- Bean whose property is to be extracted
- name- Possibly indexed and/or nested name of the property to be extracted
- Returns:
- The property's value, converted to a String
- Throws:
- IllegalAccessException- if the caller does not have access to the property accessor method
- InvocationTargetException- if the property accessor method throws an exception
- NoSuchMethodException- if an accessor method for this property cannot be found
- See Also:
 
- 
getSimplePropertypublic static String getSimpleProperty(Object bean, String name) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the specified simple property of the specified bean, converted to a String. For more details see BeanUtilsBean.- Parameters:
- bean- Bean whose property is to be extracted
- name- Name of the property to be extracted
- Returns:
- The property's value, converted to a String
- Throws:
- IllegalAccessException- if the caller does not have access to the property accessor method
- InvocationTargetException- if the property accessor method throws an exception
- NoSuchMethodException- if an accessor method for this property cannot be found
- See Also:
 
- 
populatepublic static void populate(Object bean, Map<String, ? extends Object> properties) throws IllegalAccessException, InvocationTargetExceptionPopulate the JavaBeans properties of the specified bean, based on the specified name/value pairs. For more details see BeanUtilsBean.- Parameters:
- bean- JavaBean whose properties are being populated
- properties- Map keyed by property name, with the corresponding (String or String[]) value(s) to be set
- Throws:
- IllegalAccessException- if the caller does not have access to the property accessor method
- InvocationTargetException- if the property accessor method throws an exception
- See Also:
 
- 
setPropertypublic static void setProperty(Object bean, String name, Object value) throws IllegalAccessException, InvocationTargetException Set the specified property value, performing type conversions as required to conform to the type of the destination property. For more details see BeanUtilsBean.- Parameters:
- bean- Bean on which setting is to be performed
- name- Property name (can be nested/indexed/mapped/combo)
- value- Value to be set
- Throws:
- IllegalAccessException- if the caller does not have access to the property accessor method
- InvocationTargetException- if the property accessor method throws an exception
- See Also:
 
 
-