【spring-boot-starter-data-neo4j】创建结点和查找结点操作

配置连接neo4j

# application.properties
spring.neo4j.uri=bolt://localhost:7687
spring.neo4j.authentication.username=neo4j
spring.neo4j.authentication.password=你的密码

定义实体类

package com.anmory.platform.GraphService.Dao;import org.springframework.data.neo4j.core.schema.GeneratedValue;
import org.springframework.data.neo4j.core.schema.Id;
import org.springframework.data.neo4j.core.schema.Node;
import org.springframework.data.neo4j.core.schema.Property;@Node(labels = "药材名称")
public class Herb {@Id@GeneratedValueprivate Long id;@Property("name")private String name;public Herb() {}public Herb(String name) {this.name = name;}public Long getId() {return id;}public void setId(Long id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}
}

定义仓库类

package com.anmory.platform.GraphService.Repository;import com.anmory.platform.GraphService.Dao.Herb;
import org.springframework.data.neo4j.repository.Neo4jRepository;
import org.springframework.data.neo4j.repository.query.Query;
import org.springframework.stereotype.Repository;/*** @author Anmory/李梦杰* @description TODO* @date 2025-03-15 下午12:58*/@Repository
public interface HerbRepo extends Neo4jRepository<Herb, Long> {// 使用自定义查询@Query("MATCH (herb:药材名称 {name: $name}) RETURN herb")Herb findByName(String name);
}

定义服务类

package com.anmory.platform.GraphService.Service;import com.anmory.platform.GraphService.Dao.Herb;
import com.anmory.platform.GraphService.Repository.HerbRepo;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;@Service
public class HerbService {private static final Logger logger = LoggerFactory.getLogger(HerbService.class);@Autowiredprivate HerbRepo herbRepo;public Herb createHerb(String name) {logger.info("Creating herb with name: {}", name);Herb herb = new Herb(name);return herbRepo.save(herb);}public Herb findHerbByName(String name) {logger.info("Finding herb by name: {}", name);return herbRepo.findByName(name); // 返回 null 如果未找到}
}

定义视图类

package com.anmory.platform.GraphService.Controller;import com.anmory.platform.GraphService.Dao.Herb;
import com.anmory.platform.GraphService.Service.HerbService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;@RestController
public class HerbController {@Autowiredprivate HerbService herbService;@PostMapping("/createherb")public Herb createHerb(@RequestParam String name) {System.out.println("name = " + name);return herbService.createHerb(name);}@GetMapping("/findherb")public Herb getHerbByName(@RequestParam String name) {System.out.println("name = " + name);return herbService.findHerbByName(name);}
}

测试创建和查找

在postman中输入以下url来创建和测试
http://localhost:8080/createherb?name=我的药材1
http://localhost:8080/findherb?name=我的药材1
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/72747.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

pytorch小记(十三):pytorch中`nn.ModuleList` 详解

pytorch小记&#xff08;十三&#xff09;&#xff1a;pytorch中nn.ModuleList 详解 PyTorch 中的 nn.ModuleList 详解1. 什么是 nn.ModuleList&#xff1f;2. 为什么不直接使用普通的 Python 列表&#xff1f;3. nn.ModuleList 的基本用法示例&#xff1a;构建一个包含两层全连…

Excel导出工具类--复杂的excel功能导出(使用自定义注解导出)

Excel导出工具类 前言: 简单的excel导出,可以用easy-excel, fast-excel, auto-poi,在导出实体类上加上对应的注解,用封装好的工具类直接导出,但对于复杂的场景, 封装的工具类解决不了,要用原生的excel导出(easy-excel, fast-excel, auto-poi都支持原生的) 业务场景: 根据…

批量测试IP和域名联通性2

在前面批量测试IP和域名联通性-CSDN博客的基础上&#xff0c;由于IP和域名多样性&#xff0c;比如带端口号的192.168.1.17:17&#xff0c;实际上应该ping 192.168.1.17。如果封禁http://www.abc.com/a.exe&#xff0c;实际可ping www.abc.com。所以又完善了代码。 echo off se…

国产编辑器EverEdit - 语法着色文件的语法

1 语法着色定义(官方文档) 1.1 概述 EverEdit有着优异的语法着色引擎&#xff0c;可以高亮现存的绝大多数的编程语言。在EverEdit的语法着色中有Region和Item两个概念&#xff0c;Region表示着不同的区块。而Item则代表着这些区块中不同的部分。一般情况下&#xff0c;Region…

Excel处理控件Aspose.Cells教程:如何自动将 HTML 转换为 Excel

在处理 HTML 表中呈现的结构化数据时&#xff0c;将 HTML 转换为 Excel 是一种常见需求。无论您是从网站、报告还是任何其他来源提取数据&#xff0c;将其转换为 Excel 都可以更好地进行分析、操作和共享。 开发人员通常更喜欢使用编程方法将 HTML 转换为 Excel&#xff0c;因…

基于springbo校园安全管理系统(源码+lw+部署文档+讲解),源码可白嫖!

摘要 随着信息时代的来临&#xff0c;过去信息校园安全管理方式的缺点逐渐暴露&#xff0c;本次对过去的校园安全管理方式的缺点进行分析&#xff0c;采取计算机方式构建校园安全管理系统。本文通过阅读相关文献&#xff0c;研究国内外相关技术&#xff0c;提出了一种集进出校…

vim在连续多行行首插入相同的字符

工作中经常需要用vim注释掉一段代码或者json文件中的一部分&#xff0c;需要在多行前面插入//或者#符号。在 Vim 中&#xff0c;在连续多行行首插入相同字符主要有以下两种方法&#xff1a; Visual Block 模式插入 将光标移到要插入相同内容的第一行的行首24。按下Ctrl v进入…

Git 实战指南:本地客户端连接 Gitee 全流程

本文将以 Gitee(码云)、系统Windows 11 为例,详细介绍从本地仓库初始化到远程协作的全流程操作 目录 1. 前期准备1.1 注册与配置 Gitee1.2 下载、安装、配置客户端1.3 配置公钥到 Gitee2. 本地仓库操作(PowerShell/Git Bash)2.1 初始化本地仓库2.2 关联 Gitee 远程仓库3. …

Pytest项目_day01(HTTP接口)

HTTP HTTP是一个协议&#xff08;服务器传输超文本到浏览器的传送协议&#xff09;&#xff0c;是基于TCP/IP通信协议来传输数据&#xff08;HTML文件&#xff0c;图片文件&#xff0c;查询结果等&#xff09;。 访问域名 例如www.baidu.com就是百度的域名&#xff0c;我们想…

MySQL超详细介绍(近2万字)

1. 简单概述 MySQL安装后默认有4个库不可以删除&#xff0c;存储的是服务运行时加载的不同功能的程序和数据 information_schema&#xff1a;是MySQL数据库提供的一个虚拟的数据库&#xff0c;存储了MySQL数据库中的相关信息&#xff0c;比如数据库、表、列、索引、权限、角色等…

SQLMesh宏操作符深度解析:掌握@star与@GENERATE_SURROGATE_KEY实战技巧

引言&#xff1a;解锁SQLMesh的动态查询能力 在复杂的数据处理场景中&#xff0c;手动编写重复性SQL代码不仅效率低下&#xff0c;还难以维护。SQLMesh作为新一代数据库中间件&#xff0c;通过其强大的宏系统赋予开发者编程式构建查询的能力。本文将重点解析两个核心操作符——…

超详细kubernetes部署k8s----一台master和两台node

一、部署说明 1、主机操作系统说明 2、主机硬件配置说明 二、主机准备&#xff08;没有特别说明都是三台都要配置&#xff09; 1、配置主机名和IP 2、配置hosts解析 3、防火墙和SELinux 4、时间同步配置 5、配置内核转发及网桥过滤 6、关闭swap 7、启用ipvs 8、句柄…

高光谱相机在水果分类与品质检测中的应用

一、核心应用领域 ‌外部品质检测‌ ‌表面缺陷识别&#xff1a;通过400-1000nm波段的高光谱成像&#xff0c;可检测苹果表皮损伤、碰伤等细微缺陷&#xff0c;结合图像分割技术实现快速分类‌。 ‌损伤程度评估&#xff1a;例如青香蕉的碰撞损伤会导致光谱反射率变化&#…

【蓝桥杯每日一题】3.17

&#x1f3dd;️专栏&#xff1a; 【蓝桥杯备篇】 &#x1f305;主页&#xff1a; f狐o狸x 他们说内存泄漏是bug&#xff0c;我说这是系统在逼我进化成SSR级程序员 OK来吧&#xff0c;不多废话&#xff0c;今天来点有难度的&#xff1a;二进制枚举 二进制枚举&#xff0c;就是…

Windows11 新机开荒(二)电脑优化设置

目录 前言&#xff1a; 一、注册微软账号绑定权益 二、此电脑 桌面图标 三、系统分盘及默认存储位置更改 3.1 系统分盘 3.2 默认存储位置更改 四、精简任务栏 总结&#xff1a; 前言&#xff1a; 本文承接上一篇 新机开荒&#xff08;一&#xff09; 上一篇文章地址&…

aws(学习笔记第三十三课) 深入使用cdk 练习aws athena

文章目录 aws(学习笔记第三十三课) 深入使用cdk学习内容&#xff1a;1. 使用aws athena1.1 什么是aws athena1.2 什么是aws glue1.2 为什么aws athena和aws glue一起使用 2. 开始练习aws athena2.1 代码链接2.2 整体架构2.3 代码解析2.3.1 创建测试数据的S3 bucket2.3.2 创建保…

每日学习Java之一万个为什么(待补充)

Git分支操作 git branch 分支名 git branch -v git checkout -b 分支名 git checkout 分支名 git merge 分支名 git branch -d | -D 分支名Git冲突 git同名文件合并的最基本单位是行。同名文件同一行不同就会发生冲突。 解决办法&#xff1a;及时沟通&#xff0c;手动更改&…

C++ 多生产者单消费者(MPSC)模式

根据你的需求,多生产者单消费者(MPSC)模式的日志任务队列需要调整设计。以下是改进后的代码实现,重点在于多线程安全入队、单线程消费任务,并确保停止时队列任务全部处理完毕: 多生产者单消费者(MPSC)任务队列实现 #include <iostream> #include <queue> …

OpenCV基础【图像和视频的加载与显示】

目录 一.创建一个窗口&#xff0c;显示图片 二.显示摄像头/多媒体文件 三.把摄像头录取到的视频存储在本地 四.鼠标回调事件 五.TrackBar滑动条 一.创建一个窗口&#xff0c;显示图片 import cv2img_path "src/fengjing.jpg" # 自己的图片路径 img cv2.imre…

c++--vector

1.定义vector vector的定义分为四种 (1)vector() ——————无参构造 (2)vector(size_t n,const value_type& val value_type()) ——————构造并初始化n个val (3)vector(const vector& v1) ———————拷贝构造 (4)vector(inputiterator first,inpu…