将Ehcache与Hibernate一起使用时,有没有办法在ehcache.xml文件中使用通配符指定区域名称?
例如,允许在包级别进行缓存设置(使用*作为通配符指示符),其中给定设置应用于与通配符名称匹配的任何区域:
<cache name="com.example.my.package1.*" ... />
<cache name="com.example.my.package2.*" ... />
(注意:包级别的区别只是一个例子。我的问题是一般情况下的通配符。)
答案 0 :(得分:0)
从技术上讲,没有什么可以阻止您在name
元素的cache
属性中使用通配符。毕竟,这只是documentation中提醒的一个关键:
设置缓存的名称。这用于标识缓存。它必须是独一无二的。
这会产生预期的结果吗?我不确定。正如我所说,这只是一个关键,所以如果Hibernate将区域com.example.my.package1.*
用于类com.example.my.package1.Foo
,那么这不会自动发生,你必须告诉Hibernate这样做(默认使用区域的类名)。
换句话说,使用通配符只会定义名称中带有通配符的区域。