|
发表于 2021-4-8 20:55:58
|
显示全部楼层
留一个邮箱可以提供的是pushServer.jar的源码,以及修改方案,可以自己修改测试修改的思路
/**
* 缓存组织信息
* 1. 取出组织版本号
* select sCode from SA_Code sType='orgVersion'
* 2. 判断当前缓存的组织版本号是否一致
* 如果一致, 直接 使用缓存的组织;
* 如果不一致, 加载新的组织到缓存里, 并更新缓存中组织版本号
*/
1.修改的是src\com\justep\push\OrgUtils.java
2.把getAllPerson方法改名为loadOrgsFromDB
3.定义存储组织版本和组织缓存数据的变量
public static final String orgVersion = "";
public static final Map<String, Set<String>> orgs = new ConcurrentHashMap<String, Set<String>>();
4.定义getOrgVersionFromDB方法
主要实现获取组织版本,并存到缓存变量orgVersion中
sql语句:select sCode from SA_Code where sType='orgVersion'
5.定义getAllPerson方法
private synchronized static Map<String, Set<String>> getAllPerson(){
String orgVersionFromDB = getOrgVersionFromDB();
if (orgVersionFromDB.equals(orgVersion)){
return orgs;
}else{
orgs = loadOrgsFromDB();
orgVersion = orgVersionFromDB;
return orgs;
}
}
|
|