public class Beans
extends java.lang.Object
Introspector
. The introspection differs as follows: only properties
that are both readable and writable are returned, nothing extra is done for
indexed properties and bound properties, the classpath is not searched for
BeanInfo
classes, and getPropertyDescriptors(java.lang.Object)
explicitly
sorts the descriptors by property name. Note also that the getPropertyDescriptors(java.lang.Object)
and getPropertyDescriptor(java.lang.Object, java.lang.String)
require an object, not a class.
This allows a bean to dynamically supply the type of selected by using the
PropertyTypeMethod
annotation.PropertyDescriptor
Modifier and Type | Method and Description |
---|---|
static <T> void |
copyProperties(T fromBean,
T toBean)
Copies the mutable properties of a bean to another.
|
static PropertyDescriptor |
getPropertyDescriptor(java.lang.Object bean,
java.lang.String propertyName)
Gets the descriptor of a mutable property of a bean.
|
static java.util.Collection<PropertyDescriptor> |
getPropertyDescriptors(java.lang.Object bean)
Gets the descriptors of the mutable properties of a bean.
|
static java.lang.Object |
getPropertyValue(java.lang.Object bean,
java.lang.String propertyName)
Gets the value of a mutable property of a bean.
|
static void |
setPropertyValue(java.lang.Object bean,
java.lang.String propertyName,
java.lang.Object value)
Sets the value of a mutable property of a bean.
|
public static java.util.Collection<PropertyDescriptor> getPropertyDescriptors(java.lang.Object bean)
bean
- A bean for which to get the descriptors.public static PropertyDescriptor getPropertyDescriptor(java.lang.Object bean, java.lang.String propertyName)
bean
- A bean for which to get a descriptor.propertyName
- The name of the property.public static java.lang.Object getPropertyValue(java.lang.Object bean, java.lang.String propertyName) throws java.beans.IntrospectionException, java.lang.reflect.InvocationTargetException, java.lang.IllegalAccessException
bean
- A bean for which to get the value.propertyName
- The name of the property.java.beans.IntrospectionException
java.lang.reflect.InvocationTargetException
java.lang.IllegalAccessException
public static void setPropertyValue(java.lang.Object bean, java.lang.String propertyName, java.lang.Object value) throws java.beans.IntrospectionException, java.lang.reflect.InvocationTargetException, java.lang.IllegalAccessException
bean
- A bean for which to set the value.propertyName
- The name of the property.value
- The value to set.java.beans.IntrospectionException
java.lang.reflect.InvocationTargetException
java.lang.IllegalAccessException
public static <T> void copyProperties(T fromBean, T toBean) throws java.beans.IntrospectionException, java.lang.IllegalAccessException, java.lang.reflect.InvocationTargetException
java.beans.IntrospectionException
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException