当前位置: 首页 > news >正文

响应式网站软件襄阳路桥建设集团有限公司网站

响应式网站软件,襄阳路桥建设集团有限公司网站,北京企业建立网站,网站建设 怎样找客户接Java初始化大量数据到Neo4j中(一)继续探索,之前用create命令导入大量数据发现太过耗时,查阅资料说大量数据初始化到Neo4j需要使用neo4j-admin import 业务数据说明可以参加Java初始化大量数据到Neo4j中(一),这里主要是将处理好的节点数据和…

接Java初始化大量数据到Neo4j中(一)继续探索,之前用create命令导入大量数据发现太过耗时,查阅资料说大量数据初始化到Neo4j需要使用neo4j-admin import

业务数据说明可以参加Java初始化大量数据到Neo4j中(一),这里主要是将处理好的节点数据和关系数据分别导出为csv

在这里插入代码片

入口controller.java

//导出节点数据到csv文件中
@GetMapping("exportNodeData")
public void exportNodeData(HttpServletResponse response) {service.exportNodeData(response);
}//导出关系数据到csv文件中
@GetMapping("exportRelationData")
public void exportRelationData(HttpServletResponse response) {service.exportRelationData(response);
}

service.java

//导出节点数据@Overridepublic void exportNodeData(HttpServletResponse response) {//节点数据,按照自己的实际业务添加,我这里对应的是所有表的数据,因为我业务中所有表结果基本一样,也即节点属性都一样。每个表的数据一个map,key是表名作为节点的标签Map<String, List<NodeData>> nodeDataMap;List<Map<String,String>> data = new ArrayList<>();for(String key:nodeDataMap.keySet()){List<NodeData> dataList = nodeDataMap.get(key);if (StringUtils.isEmpty(key) || dataList ==null || dataList .isEmpty()) {continue;}for (NodeData nodeData:dataList ) {Map<String,String> map = new HashMap<>();String id = nodeData.getId();String name = nodeData.getName();String table = nodeData.getName();//因为不同表的id会重复,需要一个不重复的值作为节点唯一值(我这里用的是表id拼接表数据id)String uniqueValue = nodeData.getUniqueValue(); map.put(":LABEL",table );map.put("id",id);map.put("name",name);map.put("uniqueValue:ID",uniqueValue);data.add(map);}}try {response.setCharacterEncoding("UTF-8");response.setHeader("Content-Disposition", "attachment;filename=" + new String("nodeimport.csv".getBytes(StandardCharsets.UTF_8), "ISO8859-1"));response.setContentType(ContentType.APPLICATION_OCTET_STREAM.toString());CsvWriter csvWriter =  CsvUtil.getWriter(response.getWriter()) ;csvWriter.writeBeans(data);csvWriter.close();} catch (IOException e) {e.printStackTrace();}
}//导出关系数据@Overridepublic void exportRelationData(HttpServletResponse response) {//关系数据,将每一个表数据的关系作为RelationData实体List<RelationData> relationDatas;List<Map<String,String>> data = new ArrayList<>();for (RelationData relation : relationDatas)  {Map<String,String> map = new HashMap<>();String relationName = relation .getRelationName();String id = relation .getId();//因为节点是通过表id拼接数据id,所以关系这里也需要加上拼接后不重复的值//开始节点唯一的值String uniqueStartValue = relation .getUniqueStartValue();//结束节点唯一的值String uniqueEndValue = relation .getUniqueEndValue();map.put("relationName",relationName) ;map.put("id",id) ;map.put(":START_ID",uniqueStartValue) ;map.put(":END_ID",uniqueEndValue) ;map.put(":TYPE",relationName) ;data.add(map);}try {response.setCharacterEncoding("UTF-8");response.setHeader("Content-Disposition", "attachment;filename=" + new String("relationimport.csv".getBytes(StandardCharsets.UTF_8), "ISO8859-1"));response.setContentType(ContentType.APPLICATION_OCTET_STREAM.toString());CsvWriter csvWriter =  CsvUtil.getWriter(response.getWriter()) ;csvWriter.writeBeans(data);csvWriter.close();} catch (IOException e) {e.printStackTrace();}}

CsvUtil用的是Hutool中的工具类,引入下面依赖即可

<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.7.21</version></dependency>

解释:
节点中的,
uniqueValue:ID 冒号前面可以随便写,冒号后端必须是ID,标识全局id,不可重复
:LABEL:这个是标签名,必须这样写
除了这两个以外的字段都是作为节点的属性。
导出的nodeimport.csv文件如下
在这里插入图片描述

关系中:

:START_ID:开始节点的唯一值
:END_ID:结束节点的唯一值
:TYPE:关系类型
除这三个外的字段都作为关系

导出的relationimport.csv文件如下:
在这里插入图片描述

之后找到Neo4j安装目录,找到import目录,将这个两个导出的文件放到import目录下
在这里插入图片描述
删除data\databases目录下的文件(neo4j-admin import要求是空文件 ) ,停掉Neo4j

cmd进入到bin目录,执行下面语句

neo4j-admin import --mode=csv  --nodes "E:\work_soft\neo4j-community-3.5.5-windows\neo4j-community-3.5.5\import\nodeimport.csv" --relationships "E:\work_soft\neo4j-community-3.5.5-windows\neo4j-community-3.5.5\import\relationimport.csv" --ignore-extra-columns=true --ignore-missing-nodes=true --ignore-duplicate-nodes=true

在这里插入图片描述
成功之后启动Neo4j,查看数据即可。

http://www.yayakq.cn/news/339413/

相关文章:

  • 做视频网站可以自学吗正确的建议是( )
  • 国际新闻最新消息战争优化网络培训
  • 江苏省网站备案查询微商怎么找客源人脉
  • 东莞网站关键字如何建设文化企业网站
  • 网站系统建设与管龙岩市城乡规划建设局网站
  • 深圳网站建_企业网站设计定制自媒体135编辑器官网
  • 做网站造假wordpress 调用最新评论
  • 原型图网站郑州网站优化费用
  • 做网站月薪html5开发
  • 六安网站设计公司楼市最新消息今天
  • 宁波白云医院网站建设无锡网站优化推广方案
  • 地方网站域名选择免费网站建设软件
  • 深圳微信网站公司哪家好网站维护的内容有哪些
  • 网站开发方案论文怎么制作游戏脚本视频教程
  • 商务网站建设目的电影网站建设多少钱
  • 永登网站设计与建设上海外贸
  • 外卖网站建设价钱国际贸易网站建设 中企动力湖北
  • 网站上展示手机页面是怎么做的公司网站免费建站
  • 那些门户网站的官网做的好wordpress 请提供有效的用户名.
  • 开发区网站建设方案什么设计网站好
  • 建设个直播网站要多少钱找产品代理加盟
  • 濂溪区建设局网站西安网站建设成功建设
  • 个人摄影网站模版哪个网站网站空间最好
  • 国外的优秀网站做网站语言
  • 淄博网站app县工商局 网站建设
  • 建设网站收费个人flash网站源码
  • 怎样建设淘宝客导购网站建设摩托车官网旗舰店
  • 永州市城乡建设中等职业技术学校网站免费外链代发平台
  • 做游戏的软件app济南网络优化推广公司哪家好
  • 无锡网站 制作江阴网站设计