T - the bean generic typeV - the property generic typepublic class BeanProperty<T,V> extends java.lang.Object implements Type<V>, BeanPropertyDescriptor<T,V>
| Modifier | Constructor and Description |
|---|---|
protected |
BeanProperty(java.lang.String propertyName,
java.lang.reflect.Field field,
java.lang.Class<V> propertyType,
java.lang.reflect.Method setter,
java.lang.reflect.Method getter,
java.lang.Class<T> ownerType,
java.lang.Class<?> declaringType)
Instantiates a new bean property.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(java.lang.Object obj) |
<A extends java.lang.annotation.Annotation> |
getAnnotation(java.lang.Class<A> annotationClass)
返回当前属性的指定类型注解.
|
java.lang.annotation.Annotation[] |
getAnnotations()
返回当前属性的所有注解 .
|
java.lang.Class<?> |
getDeclaringType()
返回declaringType.
|
java.lang.reflect.Field |
getField()
Gets the field.
|
java.lang.Class<?> |
getGenericType()
如果属性是一个支持泛型的对象,返回其泛型,如属性为类型java.util.Optional<java.lang.String>,则返回java.lang.String.
|
java.util.List<java.lang.Class<?>> |
getGenericTypes()
如果属性是一个支持泛型的对象,返回其所有泛型列表.
|
java.lang.Class<T> |
getInstanceType()
Gets the instance type.
|
java.lang.String |
getName()
返回属性名称.
|
java.lang.Class<T> |
getOwnerType()
返回ownerType.
|
java.lang.Class<V> |
getType()
返回属性类型.
|
java.lang.String |
getTypeName() |
V |
getValue(java.lang.Object obj)
获取属性 .
|
V |
getValueForce(java.lang.Object obj)
强制获取属性,使用field而非getter获取 .
|
<A extends java.lang.annotation.Annotation> |
hasAnnotation(java.lang.Class<A> annotationClass)
返回当前属性是否含有指定注解.
|
int |
hashCode() |
boolean |
isReadable()
当前属性是否是可读属性,拥有getter .
|
boolean |
isWritable()
当前属性是否是可写属性,拥有setter .
|
void |
setValue(java.lang.Object obj,
java.lang.Object value)
设置属性 .
|
void |
setValueForce(java.lang.Object obj,
java.lang.Object value)
强制设置属性,使用field而非setter设置 .
|
java.lang.String |
toString() |
protected BeanProperty(java.lang.String propertyName,
java.lang.reflect.Field field,
java.lang.Class<V> propertyType,
java.lang.reflect.Method setter,
java.lang.reflect.Method getter,
java.lang.Class<T> ownerType,
java.lang.Class<?> declaringType)
propertyName - 属性名称field - 存取数据的字段propertyType - 属性类型setter - 设置方法getter - 读取方法ownerType - 属性所在的类型declaringType - 定义属性的类型 (可能是ownerType的父类,也可能一样)public void setValue(java.lang.Object obj,
java.lang.Object value)
obj - 需要设置属性的对象value - 属性值public void setValueForce(java.lang.Object obj,
java.lang.Object value)
obj - 设置属性的目标对象value - 属性值public V getValue(java.lang.Object obj)
obj - 获取属性的目标对象public V getValueForce(java.lang.Object obj)
obj - 获取属性的目标对象public boolean isReadable()
public boolean isWritable()
public java.lang.Class<?> getGenericType()
如果属性是一个支持泛型的对象,返回其泛型,如属性为类型java.util.Optional<java.lang.String>,则返回java.lang.String.
public java.util.List<java.lang.Class<?>> getGenericTypes()
如果属性是一个支持泛型的对象,返回其所有泛型列表. 如属性为类型java.util.Map<java.lang.String, java.lang.Integer>,则返回[java.lang.String,java.lang.Integer].
public <A extends java.lang.annotation.Annotation> boolean hasAnnotation(java.lang.Class<A> annotationClass)
A - 注解类型annotationClass - 注解类型public <A extends java.lang.annotation.Annotation> A getAnnotation(java.lang.Class<A> annotationClass)
A - 注解类型annotationClass - 注解类型public java.lang.annotation.Annotation[] getAnnotations()
public java.lang.String toString()
toString in class java.lang.Objectpublic java.lang.Class<T> getInstanceType()
getInstanceType in interface BeanPropertyDescriptor<T,V>public java.lang.String getName()
getName in interface BeanPropertyDescriptor<T,V>public java.lang.Class<V> getType()
getType in interface BeanPropertyDescriptor<T,V>public java.lang.String getTypeName()
getTypeName in interface java.lang.reflect.Typepublic java.lang.reflect.Field getField()
public java.lang.Class<T> getOwnerType()
public java.lang.Class<?> getDeclaringType()
public int hashCode()
hashCode in class java.lang.Objectpublic boolean equals(java.lang.Object obj)
equals in class java.lang.Object