前两篇文章Springboot+Neo4j 初级框架搭建(一),Springboot+Neo4j 初级增删改查(二)我们介绍了Springboot集成Neo4j,以及Neo4j单节点的操作。
本篇文章我们就来写写节点与节点中关系的操作!!!话不多说直接开干。
在上篇文章中,我们以公司为例子做了演示,本篇文章我们还是以公司和产品为示例演示。
在生活中公司和产品有很多种关系,比如苹果是一个公司,iPhone12是一个产品,苹果和iPhone12就是一个生产的关系。我们就以这样一个简单的例子来做一个增删改查的操作我可能又要偷懒了。
首先我们在model层创建两个类,一个产品类,一个生产关系类,公司类就不创建了,上篇文章已经有了。
@NodeEntity(label = "ProductEntry")
@Data
public class ProductEntryNode {
@Id
private String productEntryId;
/\*\*
\* 模板id
\*/
private String templateId;
/\*\*
\* 词条名称
\*/
private String name;
/\*\*
\* 词条类型 1:产品种类 2:产品类型 3:产品单元
\*/
private String type;
/\*\*
\* 别名
\*/
private String aliasName;
/\*\*
\* 简介
\*/
private String introduction;
}
创建关系类@RelationshipEntity(type = “Production”)表示关系类型;type = "Production"表示是什么关系,例如生产关系,后续查询会用到;@StartNode 表示开始节点;@EndNode 表示结束节点;其他的对象都是关系的属性,比如生产了多少件等。指定了开始节点和结束节点关系就有了方向,表示公司生产产品。这里的结束节点也可以和开始节点是同一个类,比如公司-公司之间是供给关系,那么这里的@EndNode就是CompanyEntryNode,这个容易理解吧
/\*\*
\* @Author Created by YangMeng on 2021/3/4 14:09
\* 公司->生产 产品关系
\* 指定关系名称为Production
\*/