修改ObjectList导入,减少遍历次数

This commit is contained in:
zhangwenqing
2019-06-28 15:40:14 +08:00
parent 7080e65671
commit 0edcf7162f
9 changed files with 35 additions and 70 deletions

View File

@@ -215,8 +215,9 @@ public class DomainCommGroupController extends BaseController{
}
Map<String, Integer> groupIdMap = commonGroupManageService.getCountByGroupName(countSet, Constants.DOMAIN_OBJ_GROUP_TYPE); // 调用服务接口获取GroupId
domainCommGroupService.saveAndSend(regionDict, serviceDict, _stringCfgs, groupIdMap);
List<CommonGroupInfo> insertGroupList = new ArrayList<CommonGroupInfo>();
Map<String, Integer> groupIdMap = commonGroupManageService.getCountByGroupName(countSet, insertGroupList, Constants.DOMAIN_OBJ_GROUP_TYPE); // 调用服务接口获取GroupId
domainCommGroupService.saveAndSend(regionDict, serviceDict, _stringCfgs, groupIdMap, insertGroupList);
_stringCfgs.clear();
}

View File

@@ -290,8 +290,9 @@ public class IpCommGroupController extends BaseController {
}
Map<String, Integer> groupIdMap = commonGroupManageService.getCountByGroupName(countSet, Constants.IP_OBJ_GROUP_TYPE); // 调用服务接口获取GroupId
ipCommGroupCfgService.saveAndSend(regionDict, serviceDict, _ipPortCfgs, groupIdMap);
List<CommonGroupInfo> insertGroupList = new ArrayList<CommonGroupInfo>();
Map<String, Integer> groupIdMap = commonGroupManageService.getCountByGroupName(countSet, insertGroupList, Constants.IP_OBJ_GROUP_TYPE); // 调用服务接口获取GroupId
ipCommGroupCfgService.saveAndSend(regionDict, serviceDict, _ipPortCfgs, groupIdMap, insertGroupList);
_ipPortCfgs.clear();
}

View File

@@ -215,8 +215,9 @@ public class ScriberIdCommGroupController extends BaseController{
}
Map<String, Integer> groupIdMap = commonGroupManageService.getCountByGroupName(countSet, Constants.SUBID_OBJ_GROUP_TYPE); // 调用服务接口获取GroupId
scriberIdCommGroupService.saveAndSend(regionDict, serviceDict, _stringCfgs, groupIdMap);
List<CommonGroupInfo> insertGroupList = new ArrayList<CommonGroupInfo>();
Map<String, Integer> groupIdMap = commonGroupManageService.getCountByGroupName(countSet, insertGroupList, Constants.SUBID_OBJ_GROUP_TYPE); // 调用服务接口获取GroupId
scriberIdCommGroupService.saveAndSend(regionDict, serviceDict, _stringCfgs, groupIdMap, insertGroupList);
_stringCfgs.clear();
}

View File

@@ -215,8 +215,9 @@ public class UrlCommGroupController extends BaseController{
}
Map<String, Integer> groupIdMap = commonGroupManageService.getCountByGroupName(countSet, Constants.URL_OBJ_GROUP_TYPE); // 调用服务接口获取GroupId
urlCommGroupService.saveAndSend(regionDict, serviceDict, _stringCfgs, groupIdMap);
List<CommonGroupInfo> insertGroupList = new ArrayList<CommonGroupInfo>();
Map<String, Integer> groupIdMap = commonGroupManageService.getCountByGroupName(countSet, insertGroupList, Constants.URL_OBJ_GROUP_TYPE); // 调用服务接口获取GroupId
urlCommGroupService.saveAndSend(regionDict, serviceDict, _stringCfgs, groupIdMap, insertGroupList);
_stringCfgs.clear();
}

View File

@@ -297,7 +297,7 @@ public class CommonGroupManageService extends BaseService{
}
public Map<String, Integer> getCountByGroupName(Set<String> allGroupNameSet, Integer groupType) {
public Map<String, Integer> getCountByGroupName(Set<String> allGroupNameSet, List<CommonGroupInfo> insertGroupList, Integer groupType) {
Set<String> existGroupNameSet = commonGroupManageDao.getCountByGroupName(allGroupNameSet, groupType);
Integer count = allGroupNameSet.size() - existGroupNameSet.size();
@@ -315,9 +315,22 @@ public class CommonGroupManageService extends BaseService{
Map<String, Integer> map = new HashMap<String,Integer>();
if(groupIds.size() == allGroupNameSet.size()) {
int index = 0;
Long creatorId = UserUtils.getUser().getId();
Date createTime = new Date();
for (String groupName : allGroupNameSet) {
map.put(groupName, groupIds.get(index));
Integer groupId = groupIds.get(index);
map.put(groupName, groupId);
index++;
CommonGroupInfo groupInfo = new CommonGroupInfo();
groupInfo.setCreatorId(creatorId);
groupInfo.setCreateTime(createTime);
groupInfo.setGroupName(groupName);
groupInfo.setGroupType(groupType);
groupInfo.setServiceGroupId(groupId);
groupInfo.setUdFlag(1);
insertGroupList.add(groupInfo);
}
}

View File

@@ -260,7 +260,7 @@ public class DomainCommGroupService extends CrudService<CrudDao<DomainCommCfg>,
}
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public void saveAndSend(FunctionRegionDict regionDict, FunctionServiceDict serviceDict, List<BaseStringCfg<?>> cfgs, Map<String, Integer> groupIdMap) {
public void saveAndSend(FunctionRegionDict regionDict, FunctionServiceDict serviceDict, List<BaseStringCfg<?>> cfgs, Map<String, Integer> groupIdMap, List<CommonGroupInfo> insertGroupList) {
logger.warn("Start to save Domain,size:"+cfgs.size());
long start=System.currentTimeMillis();
SqlSessionFactory sqlSessionFactory=SpringContextHolder.getBean(SqlSessionFactory.class);
@@ -286,20 +286,7 @@ public class DomainCommGroupService extends CrudService<CrudDao<DomainCommCfg>,
}
batchSqlSession.commit();
if(groupIdMap.size() > 0) {
Long creatorId = UserUtils.getUser().getId();
Date createTime = new Date();
List<CommonGroupInfo> insertGroupList = new ArrayList<CommonGroupInfo>();
for (String groupName : groupIdMap.keySet()) {
CommonGroupInfo groupInfo = new CommonGroupInfo();
groupInfo.setCreatorId(creatorId);
groupInfo.setCreateTime(createTime);
groupInfo.setGroupName(groupName);
groupInfo.setGroupType(Constants.DOMAIN_OBJ_GROUP_TYPE);
groupInfo.setServiceGroupId(groupIdMap.get(groupName));
groupInfo.setUdFlag(1);
insertGroupList.add(groupInfo);
}
if(insertGroupList.size() > 0) {
commonGroupManageDao.insertBatch(insertGroupList);
}

View File

@@ -293,7 +293,7 @@ public class IpCommGroupCfgService extends BaseService {
}
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public void saveAndSend(FunctionRegionDict regionDict, FunctionServiceDict serviceDict, List<BaseIpCfg> cfgs, Map<String, Integer> groupIdMap) {
public void saveAndSend(FunctionRegionDict regionDict, FunctionServiceDict serviceDict, List<BaseIpCfg> cfgs, Map<String, Integer> groupIdMap, List<CommonGroupInfo> insertGroupList) {
logger.warn("Start to save IP,size:"+cfgs.size());
long start=System.currentTimeMillis();
SqlSessionFactory sqlSessionFactory=SpringContextHolder.getBean(SqlSessionFactory.class);
@@ -320,20 +320,7 @@ public class IpCommGroupCfgService extends BaseService {
}
batchSqlSession.commit();
if(groupIdMap.size() > 0) {
Long creatorId = UserUtils.getUser().getId();
Date createTime = new Date();
List<CommonGroupInfo> insertGroupList = new ArrayList<CommonGroupInfo>();
for (String groupName : groupIdMap.keySet()) {
CommonGroupInfo groupInfo = new CommonGroupInfo();
groupInfo.setCreatorId(creatorId);
groupInfo.setCreateTime(createTime);
groupInfo.setGroupName(groupName);
groupInfo.setGroupType(Constants.IP_OBJ_GROUP_TYPE);
groupInfo.setServiceGroupId(groupIdMap.get(groupName));
groupInfo.setUdFlag(1);
insertGroupList.add(groupInfo);
}
if(insertGroupList.size() > 0) {
commonGroupManageDao.insertBatch(insertGroupList);
}

View File

@@ -263,7 +263,7 @@ public class ScriberIdCommGroupService extends CrudService<CrudDao<ScriberIdComm
}
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public void saveAndSend(FunctionRegionDict regionDict, FunctionServiceDict serviceDict, List<BaseStringCfg<?>> cfgs, Map<String, Integer> groupIdMap) {
public void saveAndSend(FunctionRegionDict regionDict, FunctionServiceDict serviceDict, List<BaseStringCfg<?>> cfgs, Map<String, Integer> groupIdMap, List<CommonGroupInfo> insertGroupList) {
logger.warn("Start to save ScriberId,size:"+cfgs.size());
long start=System.currentTimeMillis();
SqlSessionFactory sqlSessionFactory=SpringContextHolder.getBean(SqlSessionFactory.class);
@@ -289,20 +289,7 @@ public class ScriberIdCommGroupService extends CrudService<CrudDao<ScriberIdComm
}
batchSqlSession.commit();
if(groupIdMap.size() > 0) {
Long creatorId = UserUtils.getUser().getId();
Date createTime = new Date();
List<CommonGroupInfo> insertGroupList = new ArrayList<CommonGroupInfo>();
for (String groupName : groupIdMap.keySet()) {
CommonGroupInfo groupInfo = new CommonGroupInfo();
groupInfo.setCreatorId(creatorId);
groupInfo.setCreateTime(createTime);
groupInfo.setGroupName(groupName);
groupInfo.setGroupType(Constants.SUBID_OBJ_GROUP_TYPE);
groupInfo.setServiceGroupId(groupIdMap.get(groupName));
groupInfo.setUdFlag(1);
insertGroupList.add(groupInfo);
}
if(insertGroupList.size() > 0) {
commonGroupManageDao.insertBatch(insertGroupList);
}

View File

@@ -261,7 +261,7 @@ public class UrlCommGroupService extends CrudService<CrudDao<UrlCommCfg>, UrlCom
}
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public void saveAndSend(FunctionRegionDict regionDict, FunctionServiceDict serviceDict, List<BaseStringCfg<?>> cfgs, Map<String, Integer> groupIdMap) {
public void saveAndSend(FunctionRegionDict regionDict, FunctionServiceDict serviceDict, List<BaseStringCfg<?>> cfgs, Map<String, Integer> groupIdMap, List<CommonGroupInfo> insertGroupList) {
logger.warn("Start to save URL,size:"+cfgs.size());
long start=System.currentTimeMillis();
SqlSessionFactory sqlSessionFactory=SpringContextHolder.getBean(SqlSessionFactory.class);
@@ -287,20 +287,7 @@ public class UrlCommGroupService extends CrudService<CrudDao<UrlCommCfg>, UrlCom
}
batchSqlSession.commit();
if(groupIdMap.size() > 0) {
Long creatorId = UserUtils.getUser().getId();
Date createTime = new Date();
List<CommonGroupInfo> insertGroupList = new ArrayList<CommonGroupInfo>();
for (String groupName : groupIdMap.keySet()) {
CommonGroupInfo groupInfo = new CommonGroupInfo();
groupInfo.setCreatorId(creatorId);
groupInfo.setCreateTime(createTime);
groupInfo.setGroupName(groupName);
groupInfo.setGroupType(Constants.URL_OBJ_GROUP_TYPE);
groupInfo.setServiceGroupId(groupIdMap.get(groupName));
groupInfo.setUdFlag(1);
insertGroupList.add(groupInfo);
}
if(insertGroupList.size() > 0) {
commonGroupManageDao.insertBatch(insertGroupList);
}