Spring手册中的以下示例使我感到困惑。
<bean id="cacheManager"
class="org.springframework.cache.ehcache.EhCacheCacheManager"
p:cache-manager-ref="ehcache"/>
<!-- Ehcache library setup -->
<bean id="ehcache"
class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean"
p:config-location="ehcache.xml"/>
命名约定要求EhCacheManagerFactoryBean产生一个缓存管理器,更准确地说它是一个net.sf.ehcache.CacheManager实例。然而,bean 被称为ehcachenot ehcachemanager。然而,实际的cacheManagerbean 引用了这个 bean。
在散文中,您可以说一个是 Ehcache 缓存管理器,而另一个是 Spring 缓存管理器(由前者支持)。
如果你使用它会变得更糟EhCacheFactoryBean:
<bean
id="myCache"
class="org.springframework.cache.ehcache.EhCacheFactoryBean">
<property name="cacheManager">
<ref local="ehcache" />
</property>
有一个名为的属性cacheManager引用了一个名为ehcache.
我是不是误会了什么,还是真的那么令人困惑?示例中的糟糕设计或只是糟糕的命名?