ColdFusion中的Ehcache区域
在迁移我们的应用程序的缓存服务来使用ColdFusion的Ehcache集成时,我需要找到一种方法来获得所有存储在Ehcache中的缓存区域。这是很容易完成使用Ehcache API:
- 获取CacheManager实例
- 获取缓存名
- 对缓存名称进行排序
获得缓存管理器实例
首先,我们需要获得CacheManager单例实例。
var cacheManager = createObject('java', 'net.sf.ehcache.CacheManager').getInstance();
获得缓存名称
接下来,调用公共String [] getCacheNames ()
方法。
var regions = cacheManager.getCacheNames();
排序缓存名称
最后,我想按字母顺序对区域名称进行排序。为此,我使用了Arrays.sort()实用程序方法。
var Arrays = CreateObject("java", "java.util.Arrays");Arrays.sort(地区);
把它们放在一起
就是这样!使用这个数组,我可以很容易地创建一个选择列表,使我们的开发团队能够很好地控制清除Ehcache中的缓存区域。
getfieldfactory (). getfield ("MultiSelectList")。init(name="regions", label="Remove Cache Region");var cacheManager = createObject('java', 'net.sf.ehcache.CacheManager').getInstance();var regions = cacheManager.getCacheNames();var Arrays = CreateObject("java", "java.util.Arrays");Arrays.sort(地区);for (var region in regions) {cacheRegionsSelectList。使用addOption (value =区域,标签=地区);} addField (cacheRegionsSelectList);
注意,我使用的自定义框架具有形式
帮助类来轻松创建表单。