本地安装好Neo4j:清除所有的节点和关系
代码流程解读
1. 清除 Neo4j 中的现有数据
java复制代码
session.run("MATCH (n) DETACH DELETE n");
- 在创建新节点和关系之前,首先执行
MATCH (n) DETACH DELETE n,这会删除 Neo4j 中的所有节点和它们的关系,以确保不会有旧的数据干扰。
2. 从 MySQL 数据库中读取数据并创建节点
代码中有多个 PreparedStatement 来查询 MySQL 中的三张不同表,并从中读取数据来创建 Neo4j 节点。
2.1 创建第一个表的节点
java复制代码
PreparedStatement stmt1 = mysqlConn.prepareStatement("SELECT id, unit_name FROM zcdmx_rela_ship"); ResultSet rs1 = stmt1.executeQuery(); while (rs1.next()) { long id = rs1.getLong("id"); String name = rs1.getString("unit_name"); session.run("CREATE (:Node {id: $id, name: $unit_name})", Map.of("id", id, "unit_name", name)); }
- 从
zcdmx_rela_ship表中读取id和unit_name字段。 - 每一行数据会对应一个新的节点,节点类型为
Node,并且包含id和unit_name两个属性。
2.2 创建第二个表的节点
java复制代码
PreparedStatement stmt2 = mysqlConn.prepareStatement("SELECT id, hyfl_name FROM zcdmx_rela_ship_hyfl"); ResultSet rs2 = stmt2.executeQuery(); while (rs2.next()) { long id = rs2.getLong("id"); String key = rs2.getString("hyfl_name"); session.run("CREATE (:Node {id: $id, name: $hyfl_name})", Map.of("id", id, "hyfl_name", key)); }
- 从
zcdmx_rela_ship_hyfl表中读取id和hyfl_name字段。 - 每一行数据同样会创建一个新的节点,节点属性包括
id和hyfl_name。
2.3 创建第三个表的节点及关系
java复制代码
PreparedStatement stmt3 = mysqlConn.prepareStatement("SELECT id, extend_first, extend_second, extend_fourth,extend_five,extend_six,extend_eight,extend_nine FROM knowledge_base_details"); ResultSet rs3 = stmt3.executeQuery(); while (rs3.

最低0.47元/天 解锁文章
2444

被折叠的 条评论
为什么被折叠?



