org.apache.commons.beanutils
public class PropertyUtils extends Object
Utility methods for using Java Reflection APIs to facilitate generic property getter and setter operations on Java objects.
The implementations for these methods are provided by PropertyUtilsBean
.
For more details see PropertyUtilsBean.
Version: $Revision: 644137 $ $Date: 2008-04-03 03:30:23 +0100 (Thu, 03 Apr 2008) $
See Also: PropertyUtilsBean Resolver
Field Summary | |
---|---|
static char | INDEXED_DELIM
The delimiter that preceeds the zero-relative subscript for an
indexed reference.
|
static char | INDEXED_DELIM2
The delimiter that follows the zero-relative subscript for an
indexed reference.
|
static char | MAPPED_DELIM
The delimiter that preceeds the key of a mapped property.
|
static char | MAPPED_DELIM2
The delimiter that follows the key of a mapped property.
|
static char | NESTED_DELIM
The delimiter that separates the components of a nested reference.
|
Method Summary | |
---|---|
static void | clearDescriptors()
Clear any cached property descriptors information for all classes
loaded by any class loaders. |
static void | copyProperties(Object dest, Object orig) Copy property values from the "origin" bean to the "destination" bean
for all cases where the property names are the same (even though the
actual getter and setter methods might have been customized via
For more details see |
static Map | describe(Object bean) Return the entire set of properties for which the specified bean provides a read method. For more details see |
static int | getDebug()
The debug static property is no longer used |
static Object | getIndexedProperty(Object bean, String name) Return the value of the specified indexed property of the specified bean, with no type conversions. For more details see |
static Object | getIndexedProperty(Object bean, String name, int index) Return the value of the specified indexed property of the specified bean, with no type conversions. For more details see |
static Object | getMappedProperty(Object bean, String name) Return the value of the specified mapped property of the specified bean, with no type conversions. For more details see |
static Object | getMappedProperty(Object bean, String name, String key) Return the value of the specified mapped property of the specified bean, with no type conversions. For more details see |
static FastHashMap | getMappedPropertyDescriptors(Class beanClass) Return the mapped property descriptors for this bean class. For more details see |
static FastHashMap | getMappedPropertyDescriptors(Object bean) Return the mapped property descriptors for this bean. For more details see |
static Object | getNestedProperty(Object bean, String name) Return the value of the (possibly nested) property of the specified name, for the specified bean, with no type conversions. For more details see |
static Object | getProperty(Object bean, String name) Return the value of the specified property of the specified bean, no matter which property reference format is used, with no type conversions. For more details see |
static PropertyDescriptor | getPropertyDescriptor(Object bean, String name) Retrieve the property descriptor for the specified property of the
specified bean, or return For more details see |
static PropertyDescriptor[] | getPropertyDescriptors(Class beanClass) Retrieve the property descriptors for the specified class, introspecting and caching them the first time a particular bean class is encountered. For more details see |
static PropertyDescriptor[] | getPropertyDescriptors(Object bean) Retrieve the property descriptors for the specified bean, introspecting and caching them the first time a particular bean class is encountered. For more details see |
static Class | getPropertyEditorClass(Object bean, String name) Return the Java Class repesenting the property editor class that has been registered for this property (if any). For more details see |
static Class | getPropertyType(Object bean, String name) Return the Java Class representing the property type of the specified
property, or For more details see |
static Method | getReadMethod(PropertyDescriptor descriptor) Return an accessible property getter method for this property,
if there is one; otherwise return For more details see |
static Object | getSimpleProperty(Object bean, String name) Return the value of the specified simple property of the specified bean, with no type conversions. For more details see |
static Method | getWriteMethod(PropertyDescriptor descriptor) Return an accessible property setter method for this property,
if there is one; otherwise return For more details see |
static boolean | isReadable(Object bean, String name) Return For more details see |
static boolean | isWriteable(Object bean, String name) Return For more details see |
static void | setDebug(int newDebug)
The debug static property is no longer used |
static void | setIndexedProperty(Object bean, String name, Object value) Sets the value of the specified indexed property of the specified bean, with no type conversions. For more details see |
static void | setIndexedProperty(Object bean, String name, int index, Object value) Sets the value of the specified indexed property of the specified bean, with no type conversions. For more details see |
static void | setMappedProperty(Object bean, String name, Object value) Sets the value of the specified mapped property of the specified bean, with no type conversions. For more details see |
static void | setMappedProperty(Object bean, String name, String key, Object value) Sets the value of the specified mapped property of the specified bean, with no type conversions. For more details see |
static void | setNestedProperty(Object bean, String name, Object value) Sets the value of the (possibly nested) property of the specified name, for the specified bean, with no type conversions. For more details see |
static void | setProperty(Object bean, String name, Object value) Set the value of the specified property of the specified bean, no matter which property reference format is used, with no type conversions. For more details see |
static void | setSimpleProperty(Object bean, String name, Object value) Set the value of the specified simple property of the specified bean, with no type conversions. For more details see |
Deprecated: The notation used for property name expressions is now dependant on the Resolver implementation being used.
The delimiter that preceeds the zero-relative subscript for an indexed reference.Deprecated: The notation used for property name expressions is now dependant on the Resolver implementation being used.
The delimiter that follows the zero-relative subscript for an indexed reference.Deprecated: The notation used for property name expressions is now dependant on the Resolver implementation being used.
The delimiter that preceeds the key of a mapped property.Deprecated: The notation used for property name expressions is now dependant on the Resolver implementation being used.
The delimiter that follows the key of a mapped property.Deprecated: The notation used for property name expressions is now dependant on the Resolver implementation being used.
The delimiter that separates the components of a nested reference.For more details see PropertyUtilsBean
.
See Also: PropertyUtilsBean
Copy property values from the "origin" bean to the "destination" bean
for all cases where the property names are the same (even though the
actual getter and setter methods might have been customized via
BeanInfo
classes).
For more details see PropertyUtilsBean
.
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 dest
or
orig
argument is null InvocationTargetException if the property accessor method
throws an exception NoSuchMethodException if an accessor method for this
propety cannot be found
See Also: PropertyUtilsBean
Return the entire set of properties for which the specified bean provides a read method.
For more details see PropertyUtilsBean
.
Parameters: bean Bean whose properties are to be extracted
Returns: The set of properties for the bean
Throws: IllegalAccessException if the caller does not have
access to the property accessor method IllegalArgumentException if bean
is null InvocationTargetException if the property accessor method
throws an exception NoSuchMethodException if an accessor method for this
propety cannot be found
See Also: PropertyUtilsBean
Deprecated: The debug
static property is no longer used
debug
static property is no longer usedReturns: debug property
Return the value of the specified indexed property of the specified bean, with no type conversions.
For more details see PropertyUtilsBean
.
Parameters: bean Bean whose property is to be extracted name propertyname[index]
of the property value
to be extracted
Returns: the indexed property value
Throws: IndexOutOfBoundsException if the specified index
is outside the valid range for the underlying property IllegalAccessException if the caller does not have
access to the property accessor method IllegalArgumentException if bean
or
name
is null InvocationTargetException if the property accessor method
throws an exception NoSuchMethodException if an accessor method for this
propety cannot be found
See Also: getIndexedProperty
Return the value of the specified indexed property of the specified bean, with no type conversions.
For more details see PropertyUtilsBean
.
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 value
Throws: IndexOutOfBoundsException if the specified index
is outside the valid range for the underlying property IllegalAccessException if the caller does not have
access to the property accessor method IllegalArgumentException if bean
or
name
is null InvocationTargetException if the property accessor method
throws an exception NoSuchMethodException if an accessor method for this
propety cannot be found
See Also: PropertyUtilsBean
Return the value of the specified mapped property of the specified bean, with no type conversions.
For more details see PropertyUtilsBean
.
Parameters: bean Bean whose property is to be extracted name propertyname(key)
of the property value
to be extracted
Returns: the mapped 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 propety cannot be found
See Also: getMappedProperty
Return the value of the specified mapped property of the specified bean, with no type conversions.
For more details see PropertyUtilsBean
.
Parameters: bean Bean whose property is to be extracted name Mapped property name of the property value to be extracted key Key of the property value to be extracted
Returns: the mapped 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 propety cannot be found
See Also: PropertyUtilsBean
Deprecated: This method should not be exposed
Return the mapped property descriptors for this bean class.
For more details see PropertyUtilsBean
.
Parameters: beanClass Bean class to be introspected
Returns: the mapped property descriptors
See Also: getMappedPropertyDescriptors
Deprecated: This method should not be exposed
Return the mapped property descriptors for this bean.
For more details see PropertyUtilsBean
.
Parameters: bean Bean to be introspected
Returns: the mapped property descriptors
See Also: getMappedPropertyDescriptors
Return the value of the (possibly nested) property of the specified name, for the specified bean, with no type conversions.
For more details see PropertyUtilsBean
.
Parameters: bean Bean whose property is to be extracted name Possibly nested name of the property to be extracted
Returns: the nested property value
Throws: IllegalAccessException if the caller does not have
access to the property accessor method IllegalArgumentException if bean
or
name
is null NestedNullException 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
propety cannot be found
See Also: PropertyUtilsBean
Return the value of the specified property of the specified bean, no matter which property reference format is used, with no type conversions.
For more details see PropertyUtilsBean
.
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 value
Throws: IllegalAccessException if the caller does not have
access to the property accessor method IllegalArgumentException if bean
or
name
is null InvocationTargetException if the property accessor method
throws an exception NoSuchMethodException if an accessor method for this
propety cannot be found
See Also: PropertyUtilsBean
Retrieve the property descriptor for the specified property of the
specified bean, or return null
if there is no such
descriptor.
For more details see PropertyUtilsBean
.
Parameters: bean Bean for which a property descriptor is requested name Possibly indexed and/or nested name of the property for which a property descriptor is requested
Returns: the property descriptor
Throws: IllegalAccessException if the caller does not have
access to the property accessor method IllegalArgumentException if bean
or
name
is null 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
propety cannot be found
See Also: PropertyUtilsBean
Retrieve the property descriptors for the specified class, introspecting and caching them the first time a particular bean class is encountered.
For more details see PropertyUtilsBean
.
Parameters: beanClass Bean class for which property descriptors are requested
Returns: the property descriptors
Throws: IllegalArgumentException if beanClass
is null
See Also: getPropertyDescriptors
Retrieve the property descriptors for the specified bean, introspecting and caching them the first time a particular bean class is encountered.
For more details see PropertyUtilsBean
.
Parameters: bean Bean for which property descriptors are requested
Returns: the property descriptors
Throws: IllegalArgumentException if bean
is null
See Also: getPropertyDescriptors
Return the Java Class repesenting the property editor class that has been registered for this property (if any).
For more details see PropertyUtilsBean
.
Parameters: bean Bean for which a property descriptor is requested name Possibly indexed and/or nested name of the property for which a property descriptor is requested
Returns: the property editor class
Throws: IllegalAccessException if the caller does not have
access to the property accessor method IllegalArgumentException if bean
or
name
is null 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
propety cannot be found
See Also: getPropertyEditorClass
Return the Java Class representing the property type of the specified
property, or null
if there is no such property for the
specified bean.
For more details see PropertyUtilsBean
.
Parameters: bean Bean for which a property descriptor is requested name Possibly indexed and/or nested name of the property for which a property descriptor is requested
Returns: The property type
Throws: IllegalAccessException if the caller does not have
access to the property accessor method IllegalArgumentException if bean
or
name
is null 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
propety cannot be found
See Also: PropertyUtilsBean
Return an accessible property getter method for this property,
if there is one; otherwise return null
.
For more details see PropertyUtilsBean
.
Parameters: descriptor Property descriptor to return a getter for
Returns: The read method
See Also: getReadMethod
Return the value of the specified simple property of the specified bean, with no type conversions.
For more details see PropertyUtilsBean
.
Parameters: bean Bean whose property is to be extracted name Name of the property to be extracted
Returns: The property value
Throws: IllegalAccessException if the caller does not have
access to the property accessor method IllegalArgumentException if bean
or
name
is null IllegalArgumentException if the property name
is nested or indexed InvocationTargetException if the property accessor method
throws an exception NoSuchMethodException if an accessor method for this
propety cannot be found
See Also: PropertyUtilsBean
Return an accessible property setter method for this property,
if there is one; otherwise return null
.
For more details see PropertyUtilsBean
.
Parameters: descriptor Property descriptor to return a setter for
Returns: The write method
See Also: getWriteMethod
Return true
if the specified property name identifies
a readable property on the specified bean; otherwise, return
false
.
For more details see PropertyUtilsBean
.
Parameters: bean Bean to be examined (may be a DynaBean name Property name to be evaluated
Returns: true
if the property is readable,
otherwise false
Throws: IllegalArgumentException if bean
or name
is null
Since: BeanUtils 1.6
See Also: PropertyUtilsBean
Return true
if the specified property name identifies
a writeable property on the specified bean; otherwise, return
false
.
For more details see PropertyUtilsBean
.
Parameters: bean Bean to be examined (may be a DynaBean name Property name to be evaluated
Returns: true
if the property is writeable,
otherwise false
Throws: IllegalArgumentException if bean
or name
is null
Since: BeanUtils 1.6
See Also: PropertyUtilsBean
Deprecated: The debug
static property is no longer used
debug
static property is no longer usedParameters: newDebug debug property
Sets the value of the specified indexed property of the specified bean, with no type conversions.
For more details see PropertyUtilsBean
.
Parameters: bean Bean whose property is to be modified name propertyname[index]
of the property value
to be modified value Value to which the specified property element
should be set
Throws: IndexOutOfBoundsException if the specified index
is outside the valid range for the underlying property IllegalAccessException if the caller does not have
access to the property accessor method IllegalArgumentException if bean
or
name
is null InvocationTargetException if the property accessor method
throws an exception NoSuchMethodException if an accessor method for this
propety cannot be found
See Also: PropertyUtilsBean
Sets the value of the specified indexed property of the specified bean, with no type conversions.
For more details see PropertyUtilsBean
.
Parameters: bean Bean whose property is to be set name Simple property name of the property value to be set index Index of the property value to be set value Value to which the indexed property element is to be set
Throws: IndexOutOfBoundsException if the specified index
is outside the valid range for the underlying property IllegalAccessException if the caller does not have
access to the property accessor method IllegalArgumentException if bean
or
name
is null InvocationTargetException if the property accessor method
throws an exception NoSuchMethodException if an accessor method for this
propety cannot be found
See Also: PropertyUtilsBean
Sets the value of the specified mapped property of the specified bean, with no type conversions.
For more details see PropertyUtilsBean
.
Parameters: bean Bean whose property is to be set name propertyname(key)
of the property value
to be set value The property 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 NoSuchMethodException if an accessor method for this propety cannot be found
See Also: PropertyUtilsBean
Sets the value of the specified mapped property of the specified bean, with no type conversions.
For more details see PropertyUtilsBean
.
Parameters: bean Bean whose property is to be set name Mapped property name of the property value to be set key Key of the property value to be set value The property 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 NoSuchMethodException if an accessor method for this propety cannot be found
See Also: PropertyUtilsBean
Sets the value of the (possibly nested) property of the specified name, for the specified bean, with no type conversions.
For more details see PropertyUtilsBean
.
Parameters: bean Bean whose property is to be modified name Possibly nested name of the property to be modified value Value to which the property is to be set
Throws: IllegalAccessException if the caller does not have
access to the property accessor method IllegalArgumentException if bean
or
name
is null 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
propety cannot be found
See Also: PropertyUtilsBean
Set the value of the specified property of the specified bean, no matter which property reference format is used, with no type conversions.
For more details see PropertyUtilsBean
.
Parameters: bean Bean whose property is to be modified name Possibly indexed and/or nested name of the property to be modified value Value to which this property is to be set
Throws: IllegalAccessException if the caller does not have
access to the property accessor method IllegalArgumentException if bean
or
name
is null InvocationTargetException if the property accessor method
throws an exception NoSuchMethodException if an accessor method for this
propety cannot be found
See Also: PropertyUtilsBean
Set the value of the specified simple property of the specified bean, with no type conversions.
For more details see PropertyUtilsBean
.
Parameters: bean Bean whose property is to be modified name Name of the property to be modified value Value to which the property should be set
Throws: IllegalAccessException if the caller does not have
access to the property accessor method IllegalArgumentException if bean
or
name
is null IllegalArgumentException if the property name is
nested or indexed InvocationTargetException if the property accessor method
throws an exception NoSuchMethodException if an accessor method for this
propety cannot be found
See Also: PropertyUtilsBean