基于 IBM 和 FileNet 内容管理产品的联合查询服务
2010-02-05 00:00:00 来源:WEB开发网与 Java Integrate API 的方式一样,使用查询前要判断存储库是否支持该项操作。
清单 7. 判断存储库是否支持查询,如果支持,创建一个联合查询实例
if(!asProxy.getRepositoryProfile(stateKey, "IBMCMConnector").getCanQuery()
|| !asProxy.getRepositoryProfile(stateKey, "FileNetP8CMConnector").getCanQuery()){
System.out.println("选定进行联合查询的存储库不支持查询操作。");
return;
}
MultiQuery query = new MultiQuery();
和 Java Integrate API 不同的是,这里根据存储库的数量创建相同数目的 Query 实例,并将这些示例作为属性添加到联合查询对象中。
清单 8. 设置联合查询属性并执行
query.setMaxResults(10); // 设置最大查询结果数
query.setSelectionCriteria("Name Is NotNull"); // 查询条件
// 定制返回结果列表的字段
query.addSelectionProperties({"stringType", "dateType", "integerType"});
String[] repos = {cmLogonID, p8LogonID};
Query[] qList = new Query[repos.size()]; // 创建一个容纳和存储库相同数目的 Query 对象的数组
for(int i=0; i < repos.size(); ++i) {
String repoID = (String)repos.elementAt(i);
String logonID = (String)logons.elementAt(i);
Query q = new Query();
q.setLogonID(logonID);
q.setRepositoryID(repoID);
// 联合查询对象的属性也是该查询实例的属性
if(dataMapName != null) {
DataMap map = asProxy.getDataMap(stateKey, dataMapName, repoID);
q.setDataMapInUse(map);
}
q.setMaxResults(query.getMaxResults());
q.setSelectionCriteria(query.getSelectionCriteria());
q.setFullTextCriteria(query.getFullTextCriteria());
q.setIncludeMimeTypes(query.getIncludeMimeTypes());
q.setIncludeRelevancyScores(query.getIncludeRelevancyScores());
q.setIncludeItemNames(query.getIncludeItemNames());
q.setSelectionProperties(query.getSelectionProperties());
qList[i] = q;
}
query.setQueryList(qList);
SimpleResultSet rs = asProxy.execMultiQuery(stateKey, query);
同样,查询完毕后需要释放相关资源
清单 9. 释放资源
asProxy.logoff(stateKey, cmLogonID);
asProxy.logoff(stateKey, p8LogonID);
asProxy.freeInstance(stateKey);
结束语
通过 ICI 提供的同一接口集成 IBM Content Manager 和 FileNet P8 Content Manager,实现了对非结构化存储库的便捷管理,特别是其提供的内容联合查询服务,大大提高了在开发企业级应用过程中对数据的整合利用程度,同时也简化了企业应用的开发。
- ››基于IP地址的vsftp服务器
- ››基于MySQL 水平分区的优化示例
- ››基于CentOS5的Linux下pptp和openvpn的搭建及配置
- ››基于JavaScript的网页版塔防游戏
- ››基于Android平台 QQ大战360手机游戏爆红
- ››基于Windows Azure的云计算应用设计
- ››基于AES算法实现对数据的加密
- ››基于SoPC目标板Flash编程设计的创建及应用
- ››基于SolidWarks齿轮机构的运动分析与仿真
- ››基于Windwos Server 2008故障转移群
- ››IBM WebSphere常见问题解答
- ››IBM WebSphere Studio V5相关认证资料
更多精彩
赞助商链接