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