以下示例来自Spring手册,让我感到非常困惑。
命名规范要求
用通俗易懂的语言来说,一个是Ehcache缓存管理器,另一个是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的名称为ehcache
而不是ehcachemanager
。实际上cacheManager
引用了这个bean。用通俗易懂的语言来说,一个是Ehcache缓存管理器,另一个是Spring缓存管理器(由前者支持)。
如果使用
EhCacheFactoryBean
,情况会更糟。<bean
id="myCache"
class="org.springframework.cache.ehcache.EhCacheFactoryBean">
<property name="cacheManager">
<ref local="ehcache" />
</property>
有一个叫做
cacheManager
的属性,它引用了一个叫做ehcache
的bean。
我是否有什么误解或者这真的很困惑?这个例子是设计不好还是命名不好?
ehcacheManager
对于那个 bean 来说会是一个更合适的名称吗? - Marcel Stör