图模式的NoSQL数据库:Neo4j
Neo4J是什么?
1. 一个高性能的图关系模型数据库
2. 一个NoSQL的数据库
3. 支持多种编程语言
4. Neo4J擅长处理具有多关系的模型数据
Neo4J中怎么删除与某个节点有关系的节点?
1. 查找到目标节点所有关系
2. 开启一个事务,删除所有关系的start node或end node
3. 遍历所有找到的node并删除相关的RelationShip
4. 然后删除node本身,提交事务
1 public static void DeleteRelativeNode(Node n) {
2 TraversalDescription td = Traversal.description().relationships(Types.Relative, Direction.BOTH)
3 .evaluator(Evaluators.excludeStartPosition());
4 Traverser t = td.traverse(n);
5 for(Node tn : t.nodes()) {
6 Iterable<Relationship> relationships = tn.getRelationships();
7 for (Relationship r : relationships) {
8 if (r.getStartNode().equals(n) || r.getEndNode().equals(n)) {
9 r.delete();
10 }
11 }
12 if (!tn.hasRelationship()) {
13 tn.delete();
14 }
15 }
16 }
将想法付诸于实践,借此来影响他人是一个人存在的真正价值