public class PropDesc extends Object
Modifier and Type | Field and Description |
---|---|
protected Method |
getter
Getter方法
|
protected Method |
setter
Setter方法
|
Constructor and Description |
---|
PropDesc(Field field,
Method getter,
Method setter)
构造
Getter和Setter方法设置为默认可访问 |
Modifier and Type | Method and Description |
---|---|
Field |
getField()
获取字段
|
Class<?> |
getFieldClass()
获得字段类型
先获取字段的类型,如果字段不存在,则获取Getter方法的返回类型,否则获取Setter的第一个参数类型 |
String |
getFieldName()
获取字段名,如果存在Alias注解,读取注解的值作为名称
|
Type |
getFieldType()
获得字段类型
先获取字段的类型,如果字段不存在,则获取Getter方法的返回类型,否则获取Setter的第一个参数类型 |
Method |
getGetter()
获取Getter方法,可能为
null |
String |
getRawFieldName()
获取字段名称
|
Method |
getSetter()
获取Setter方法,可能为
null |
Object |
getValue(Object bean)
获取属性值
首先调用字段对应的Getter方法获取值,如果Getter方法不存在,则判断字段如果为public,则直接获取字段值 此方法不检查任何注解,使用前需调用 isReadable(boolean) 检查是否可读 |
Object |
getValue(Object bean,
Type targetType,
boolean ignoreError)
获取属性值,自动转换属性值类型
首先调用字段对应的Getter方法获取值,如果Getter方法不存在,则判断字段如果为public,则直接获取字段值 |
boolean |
isReadable(boolean checkTransient)
检查属性是否可读(即是否可以通过
getValue(Object) 获取到值) |
boolean |
isWritable(boolean checkTransient)
检查属性是否可读(即是否可以通过
getValue(Object) 获取到值) |
PropDesc |
setValue(Object bean,
Object value)
设置Bean的字段值
首先调用字段对应的Setter方法,如果Setter方法不存在,则判断字段如果为public,则直接赋值字段值 此方法不检查任何注解,使用前需调用 isWritable(boolean) 检查是否可写 |
PropDesc |
setValue(Object bean,
Object value,
boolean ignoreNull,
boolean ignoreError)
设置属性值,可以自动转换字段类型为目标类型
|
PropDesc |
setValue(Object bean,
Object value,
boolean ignoreNull,
boolean ignoreError,
boolean override)
设置属性值,可以自动转换字段类型为目标类型
|
public String getFieldName()
public String getRawFieldName()
public Field getField()
public Type getFieldType()
public Class<?> getFieldClass()
public Method getGetter()
null
public boolean isReadable(boolean checkTransient)
getValue(Object)
获取到值)checkTransient
- 是否检查Transient关键字或注解public Object getValue(Object bean)
isReadable(boolean)
检查是否可读bean
- Bean对象public Object getValue(Object bean, Type targetType, boolean ignoreError)
bean
- Bean对象targetType
- 返回属性值需要转换的类型,null表示不转换ignoreError
- 是否忽略错误,包括转换错误和注入错误public boolean isWritable(boolean checkTransient)
getValue(Object)
获取到值)checkTransient
- 是否检查Transient关键字或注解public PropDesc setValue(Object bean, Object value)
isWritable(boolean)
检查是否可写bean
- Bean对象value
- 值,必须与字段值类型匹配public PropDesc setValue(Object bean, Object value, boolean ignoreNull, boolean ignoreError)
bean
- Bean对象value
- 属性值,可以为任意类型ignoreNull
- 是否忽略null
值,true表示忽略ignoreError
- 是否忽略错误,包括转换错误和注入错误public PropDesc setValue(Object bean, Object value, boolean ignoreNull, boolean ignoreError, boolean override)
bean
- Bean对象value
- 属性值,可以为任意类型ignoreNull
- 是否忽略null
值,true表示忽略ignoreError
- 是否忽略错误,包括转换错误和注入错误override
- 是否覆盖目标值,如果不覆盖,会先读取bean的值,null
则写,否则忽略。如果覆盖,则不判断直接写Copyright © 2024. All rights reserved.