博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
* 初始化图数据需要的人员节点数据
阅读量:4625 次
发布时间:2019-06-09

本文共 2313 字,大约阅读时间需要 7 分钟。

* 初始化图数据需要的人员节点数据

*
* @param personBaseInfoRepository
* @return
*/
@Override
public void resetNeo4jPersonBaseInfoNode(PersonBaseInfoRepository personBaseInfoRepository) {
//查询人员节点列表
List<PersonBaseInfo> personBaseInfos www.ztyLegw.cn= graphDataDao.queryPersonBaseInfo();

for (PersonBaseInfo personBaseInfo :personBaseInfos){

try {
personBaseInfoRepository.save(personBaseInfo);
}
catch (Throwable t){
//生成节点异常时,继续跳过。
continue;
}
}
}
复制代码

初始化内部外部关心数据,代码如下:

复制代码

/********************************************开始初始化节点间关系的数据**********************************************/

/**

* 初始化五大节点间的关系数据。
* @param neo4jRelationInfoRepository
* @return
*/
@Override
public void resetAllRelationInfo(Neo4jRelationInfoRepository neo4jRelationInfoRepository) {
long start = System.currentTimeMillis(www.tcgjgw.com);
//初始化人员-->工作关系,人员->学校;人员->论文;人员->住房信息4个主关系的数据。
List<Map<String,Object>>www.feironggw.cn lists = graphDataDao.queryEntityRelationInfo();
//计算内部关系信息 ,同事,校友,邻居,合作者关系。
Map<String,List<String>> schoolFriendMap = new ConcurrentHashMap<>(); //校友

Map<String,List<String>> workTogetherMap = new ConcurrentHashMap<>(); //同事

Map<String,List<String>> neighborMap = new ConcurrentHashMap<>(); //邻居

Map<String,List<String>> collaboratorMap = new ConcurrentHashMap<>();//论文合作者
for(Map<String,Object> map :lists){

String userId = "";

//获取人员信息
if(StringUtils.isNoneEmpty((String)map.get("USERID")) && StringUtils.isNoneEmpty((String)map.get("USERNAME"))){
//取工作单位字段 UNIT_ID , UNIT_NAME
if(StringUtils.isNoneEmpty((String)map.get("UNIT_ID"www.wanhaoptdL.com)) && StringUtils.isNoneEmpty((String)map.get("UNIT_NAME"))){
//插入就职关系
neo4jRelationInfoRepository.generateGraphDataRelation_JZGX((String)map.get(www.yuntianyuL.cn"USERID"),(String)map.get("UNIT_ID"),(String)map.get("USERID")+"-www.yuntianyul.com>"+(String)map.get("UNIT_www.cmylli.com ID"));

//处理同事关系

if(workTogetherMap.containsKey((String)map.get("UNIT_ID"))){
List<String> list = workTogetherMap.get((String)map.get("UNIT_ID"));
if(!list.contains(www.cmyLgw.cn (String)map.get("USERID"))){
list.add((String)map.get("USERID"));
workTogetherMap.put((String)map.get("UNIT_ID"),list);
}
}else{
List<String> lis = new ArrayList<String>();
lis.add((String)map.get("USERID"));
workTogetherMap.put((String)map.get("UNIT_ID"),lis);

转载于:https://www.cnblogs.com/qwangxiao/p/10974650.html

你可能感兴趣的文章
ural 1005 Stone Pile DP
查看>>
day15—jQuery UI之widgets插件
查看>>
使用ssh和putty操控远程的linux server
查看>>
BZOJ1499: [NOI2005]瑰丽华尔兹
查看>>
过滤器
查看>>
Redis是什么?
查看>>
JavaScript 学习总结
查看>>
iOS开发——UI进阶篇(十)导航控制器、微博详情页、控制器的View的生命周期...
查看>>
多线程(四)线程生命周期和线程池
查看>>
fetch的用法
查看>>
2017.08.11【NOIP提高组】模拟赛B组 小X的佛光
查看>>
【转】[精华] 跟我一起写 Makefile
查看>>
排序俩种方法
查看>>
MVC 三级联动
查看>>
JPA 已作废的SQLQuery.class、setResultTransformer方法替换
查看>>
20190402——第一场UPC团队训练
查看>>
爱奇艺视频广告拦截失败,发文共商大计
查看>>
洛谷1144 最短路计数
查看>>
BZOJ 1207: [HNOI2004]打鼹鼠
查看>>
堆排序
查看>>