org.springframework.cache.interceptor

## 类 NameMatchCacheOperationSource

- java.lang.Object
- - org.springframework.cache.interceptor.NameMatchCacheOperationSource

- 所有已实现的接口:
    Serializable, CacheOperationSource

      public class NameMatchCacheOperationSource
      extends Object
      implements CacheOperationSource, Serializable

  Simple `CacheOperationSource` implementation that allows attributes to be matched by registered name.
  从以下版本开始:
    3.1
  作者:
    Costin Leau
  另请参阅:
    序列化表格

- - ### 字段概要

    字段
    限定符和类型 | 字段和说明
    --- | ---
    `protected static Log` | `logger` Logger available to subclasses.

  - ### 构造器概要

    构造器
    构造器和说明
    `NameMatchCacheOperationSource()`

  - ### 方法概要

    所有方法 实例方法 具体方法
    限定符和类型 | 方法和说明
    --- | ---
    `void` | `addCacheMethod(String methodName, Collection<CacheOperation> ops)` Add an attribute for a cacheable method.
    `boolean` | `equals(Object other)`
    `Collection<CacheOperation>` | `getCacheOperations(Method method, Class<?> targetClass)` Return the collection of cache operations for this method, or `null` if the method contains no cacheable annotations.
    `int` | `hashCode()`
    `protected boolean` | `isMatch(String methodName, String mappedName)` Return if the given method name matches the mapped name.
    `void` | `setNameMap(Map<String,Collection<CacheOperation>> nameMap)` Set a name/attribute map, consisting of method names (e.g.
    `String` | `toString()`

    - ### 从类继承的方法 java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### 字段详细资料

    - #### logger

          protected static final Log logger

      Logger available to subclasses.

      Static for optimal serialization.

  - ### 构造器详细资料

    - #### NameMatchCacheOperationSource

          public NameMatchCacheOperationSource()

  - ### 方法详细资料

    - #### setNameMap

          public void setNameMap(Map<String,Collection<CacheOperation>> nameMap)

      Set a name/attribute map, consisting of method names (e.g. "myMethod") and CacheOperation instances (or Strings to be converted to CacheOperation instances).
      另请参阅:
        `CacheOperation`

    - #### addCacheMethod

          public void addCacheMethod(String methodName,
                                     Collection<CacheOperation> ops)

      Add an attribute for a cacheable method.

      Method names can be exact matches, or of the pattern "xxx*", "*xxx" or "*xxx*" for matching multiple methods.

      参数:
        `methodName` - the name of the method
        `ops` - operation associated with the method

    - #### getCacheOperations

          @Nullable
          public Collection<CacheOperation> getCacheOperations(Method method,
                                                                          @Nullable
                                                                          Class<?> targetClass)

      从接口复制的说明: `CacheOperationSource`
      Return the collection of cache operations for this method, or `null` if the method contains no cacheable annotations.
      指定者:
        `getCacheOperations` 在接口中 `CacheOperationSource`
      参数:
        `method` - the method to introspect
        `targetClass` - the target class (may be `null`, in which case the declaring class of the method must be used)
      返回:
        all cache operations for this method, or `null` if none found

    - #### isMatch

          protected boolean isMatch(String methodName,
                                    String mappedName)

      Return if the given method name matches the mapped name.

      The default implementation checks for "xxx*", "*xxx" and "*xxx*" matches, as well as direct equality. Can be overridden in subclasses.

      参数:
        `methodName` - the method name of the class
        `mappedName` - the name in the descriptor
      返回:
        if the names match
      另请参阅:
        `PatternMatchUtils.simpleMatch(String, String)`

    - #### equals

          public boolean equals(Object other)

      覆盖:
        `equals` 在类中 `Object`

    - #### hashCode

          public int hashCode()

      覆盖:
        `hashCode` 在类中 `Object`

    - #### toString

          public String toString()

      覆盖:
        `toString` 在类中 `Object`