java.lang.Object | |
↳ | org.springframework.expression.spel.support.ReflectivePropertyAccessor |
Simple PropertyAccessor that uses reflection to access properties for reading and writing. A property can be accessed if it is accessible as a field on the object or through a getter (if being read) or a setter (if being written).
Fields | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
readerCache | |||||||||||
typeDescriptorCache | |||||||||||
writerCache |
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Called to determine if a resolver instance is able to access a specified property on a specified target object.
| |||||||||||
Called to determine if a resolver instance is able to write to a specified property on a specified target object.
| |||||||||||
Attempt to create an optimized property accessor tailored for a property of a particular name on
a particular class.
| |||||||||||
Return an array of classes for which this resolver should be called.
| |||||||||||
Called to read a property from a specified target object
| |||||||||||
Called to write to a property on a specified target object.
|
Protected Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Find a field of a certain name on a specified class
| |||||||||||
Find a getter method for the specified property.
| |||||||||||
Find a setter method for the specified property.
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.lang.Object
| |||||||||||
From interface
org.springframework.expression.PropertyAccessor
|
Called to determine if a resolver instance is able to access a specified property on a specified target object.
context | the evaluation context in which the access is being attempted |
---|---|
target | the target object upon which the property is being accessed |
name | the name of the property being accessed |
AccessException |
---|
Called to determine if a resolver instance is able to write to a specified property on a specified target object.
context | the evaluation context in which the access is being attempted |
---|---|
target | the target object upon which the property is being accessed |
name | the name of the property being accessed |
AccessException |
---|
Attempt to create an optimized property accessor tailored for a property of a particular name on a particular class. The general ReflectivePropertyAccessor will always work but is not optimal due to the need to lookup which reflective member (method/field) to use each time read() is called. This method will just return the ReflectivePropertyAccessor instance if it is unable to build something more optimal.
Return an array of classes for which this resolver should be called. Returning null indicates this is a general resolver that can be called in an attempt to resolve a property on any type.
Called to read a property from a specified target object
context | the evaluation context in which the access is being attempted |
---|---|
target | the target object upon which the property is being accessed |
name | the name of the property being accessed |
AccessException |
---|
Called to write to a property on a specified target object. Should only succeed if canWrite() also returns true.
context | the evaluation context in which the access is being attempted |
---|---|
target | the target object upon which the property is being accessed |
name | the name of the property being accessed |
newValue | the new value for the property |
AccessException |
---|
Find a field of a certain name on a specified class
Find a getter method for the specified property. A getter is defined as a method whose name start with the prefix 'get' and the rest of the name is the same as the property name (with the first character uppercased).
Find a setter method for the specified property.