(1)将excel相关的线程类划分到thread包下
(2)Ddos验证时如果协议为空,设置协议值为空字符串 (3)Ddos ip导入改为批量导入
This commit is contained in:
@@ -7,15 +7,20 @@ import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.apache.ibatis.session.ExecutorType;
|
||||
import org.apache.ibatis.session.SqlSession;
|
||||
import org.apache.ibatis.session.SqlSessionFactory;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import com.beust.jcommander.internal.Lists;
|
||||
import com.google.gson.Gson;
|
||||
import com.nis.domain.Page;
|
||||
import com.nis.domain.callback.InlineIp;
|
||||
import com.nis.domain.configuration.BaseIpCfg;
|
||||
import com.nis.domain.configuration.CfgIndexInfo;
|
||||
import com.nis.domain.configuration.DdosIpCfg;
|
||||
import com.nis.domain.configuration.IpPortCfg;
|
||||
import com.nis.domain.maat.MaatCfg;
|
||||
@@ -31,8 +36,10 @@ import com.nis.util.ConfigServiceUtil;
|
||||
import com.nis.util.Constants;
|
||||
import com.nis.util.StringUtil;
|
||||
import com.nis.web.dao.configuration.DdosCfgDao;
|
||||
import com.nis.web.dao.configuration.IpCfgDao;
|
||||
import com.nis.web.security.UserUtils;
|
||||
import com.nis.web.service.BaseService;
|
||||
import com.nis.web.service.SpringContextHolder;
|
||||
|
||||
|
||||
|
||||
@@ -58,11 +65,28 @@ public class DdosCfgService extends BaseService{
|
||||
public DdosIpCfg getDdosIpCfg(Long cfgId) {
|
||||
return ddosCfgDao.getDdosIpCfg(cfgId);
|
||||
}
|
||||
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
|
||||
public void saveDdosIpCfg(List<BaseIpCfg> ipPortCfgs) {
|
||||
List<DdosIpCfg> ddosIpCfgS=Lists.newArrayList(ipPortCfgs.size());
|
||||
for(BaseIpCfg cfg:ipPortCfgs) {
|
||||
DdosIpCfg ddosIpCfg=new DdosIpCfg();
|
||||
BeanUtils.copyProperties(cfg, ddosIpCfg);
|
||||
saveOrUpdate(ddosIpCfg);
|
||||
ddosIpCfgS.add(ddosIpCfg);
|
||||
}
|
||||
SqlSessionFactory sqlSessionFactory=SpringContextHolder.getBean(SqlSessionFactory.class);
|
||||
SqlSession batchSqlSession = null;
|
||||
try{
|
||||
batchSqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH, false);
|
||||
for(int index = 0; index < ddosIpCfgS.size();index++){
|
||||
DdosIpCfg ddosIpCfg = ddosIpCfgS.get(index);
|
||||
//如果insert加入了select last_insert_id,会拖慢6~7倍以上的效率
|
||||
((DdosCfgDao) batchSqlSession.getMapper(DdosCfgDao.class)).insert(ddosIpCfg);
|
||||
}
|
||||
batchSqlSession.commit();
|
||||
}finally {
|
||||
if(batchSqlSession != null){
|
||||
batchSqlSession.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
|
||||
|
||||
Reference in New Issue
Block a user