下载资源后端资源详情
springboot-neo4j-demo.zip
大小:77.76KB
价格:50积分
下载量:0
评分:
5.0
上传者:m0_54479027
更新日期:2025-09-22

springboot集成neo4j,使用继承Neo4jRepository的方式来实现对数据的操作

资源文件列表(大概)

文件名
大小
springboot-neo4j-demo/
-
springboot-neo4j-demo/.gitignore
395B
springboot-neo4j-demo/.idea/
-
springboot-neo4j-demo/.idea/.gitignore
184B
springboot-neo4j-demo/.idea/codeStyles/
-
springboot-neo4j-demo/.idea/codeStyles/Project.xml
269B
springboot-neo4j-demo/.idea/codeStyles/codeStyleConfig.xml
153B
springboot-neo4j-demo/.idea/compiler.xml
699B
springboot-neo4j-demo/.idea/encodings.xml
267B
springboot-neo4j-demo/.idea/inspectionProfiles/
-
springboot-neo4j-demo/.idea/inspectionProfiles/Project_Default.xml
1.41KB
springboot-neo4j-demo/.idea/jarRepositories.xml
879B
springboot-neo4j-demo/.idea/libraries/
-
springboot-neo4j-demo/.idea/libraries/Maven__ch_qos_logback_logback_classic_1_2_3.xml
619B
springboot-neo4j-demo/.idea/libraries/Maven__ch_qos_logback_logback_core_1_2_3.xml
598B
springboot-neo4j-demo/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_annotations_2_11_4.xml
702B
springboot-neo4j-demo/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_core_2_11_4.xml
653B
springboot-neo4j-demo/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_databind_2_11_4.xml
681B
springboot-neo4j-demo/.idea/libraries/Maven__com_fasterxml_jackson_datatype_jackson_datatype_jdk8_2_11_4.xml
732B
springboot-neo4j-demo/.idea/libraries/Maven__com_fasterxml_jackson_datatype_jackson_datatype_jsr310_2_11_4.xml
746B
springboot-neo4j-demo/.idea/libraries/Maven__com_fasterxml_jackson_module_jackson_module_parameter_names_2_11_4.xml
787B
springboot-neo4j-demo/.idea/libraries/Maven__com_jayway_jsonpath_json_path_2_4_0.xml
597B
springboot-neo4j-demo/.idea/libraries/Maven__com_vaadin_external_google_android_json_0_0_20131108_vaadin1.xml
751B
springboot-neo4j-demo/.idea/libraries/Maven__io_github_classgraph_classgraph_4_8_151.xml
622B
springboot-neo4j-demo/.idea/libraries/Maven__jakarta_activation_jakarta_activation_api_1_2_2.xml
684B
springboot-neo4j-demo/.idea/libraries/Maven__jakarta_annotation_jakarta_annotation_api_1_3_5.xml
684B
springboot-neo4j-demo/.idea/libraries/Maven__jakarta_xml_bind_jakarta_xml_bind_api_2_3_3.xml
662B
springboot-neo4j-demo/.idea/libraries/Maven__net_bytebuddy_byte_buddy_1_10_19.xml
594B
springboot-neo4j-demo/.idea/libraries/Maven__net_bytebuddy_byte_buddy_agent_1_10_19.xml
636B
springboot-neo4j-demo/.idea/libraries/Maven__net_minidev_accessors_smart_1_2.xml
593B
springboot-neo4j-demo/.idea/libraries/Maven__net_minidev_json_smart_2_3.xml
558B
springboot-neo4j-demo/.idea/libraries/Maven__org_apache_logging_log4j_log4j_api_2_13_3.xml
624B
springboot-neo4j-demo/.idea/libraries/Maven__org_apache_logging_log4j_log4j_to_slf4j_2_13_3.xml
659B
springboot-neo4j-demo/.idea/libraries/Maven__org_apache_tomcat_embed_tomcat_embed_core_9_0_41.xml
676B
springboot-neo4j-demo/.idea/libraries/Maven__org_apache_tomcat_embed_tomcat_embed_websocket_9_0_41.xml
711B
springboot-neo4j-demo/.idea/libraries/Maven__org_apiguardian_apiguardian_api_1_1_0.xml
623B
springboot-neo4j-demo/.idea/libraries/Maven__org_aspectj_aspectjweaver_1_9_6.xml
593B
springboot-neo4j-demo/.idea/libraries/Maven__org_assertj_assertj_core_3_18_1.xml
593B
springboot-neo4j-demo/.idea/libraries/Maven__org_glassfish_jakarta_el_3_0_3.xml
580B
springboot-neo4j-demo/.idea/libraries/Maven__org_hamcrest_hamcrest_2_2.xml
548B
springboot-neo4j-demo/.idea/libraries/Maven__org_junit_jupiter_junit_jupiter_5_7_0.xml
617B
springboot-neo4j-demo/.idea/libraries/Maven__org_junit_jupiter_junit_jupiter_api_5_7_0.xml
645B
springboot-neo4j-demo/.idea/libraries/Maven__org_junit_jupiter_junit_jupiter_engine_5_7_0.xml
666B
springboot-neo4j-demo/.idea/libraries/Maven__org_junit_jupiter_junit_jupiter_params_5_7_0.xml
666B
springboot-neo4j-demo/.idea/libraries/Maven__org_junit_platform_junit_platform_commons_1_7_0.xml
684B
springboot-neo4j-demo/.idea/libraries/Maven__org_junit_platform_junit_platform_engine_1_7_0.xml
677B
springboot-neo4j-demo/.idea/libraries/Maven__org_mockito_mockito_core_3_6_28.xml
593B
springboot-neo4j-demo/.idea/libraries/Maven__org_mockito_mockito_junit_jupiter_3_6_28.xml
656B
springboot-neo4j-demo/.idea/libraries/Maven__org_neo4j_driver_neo4j_java_driver_4_1_1.xml
641B
springboot-neo4j-demo/.idea/libraries/Maven__org_neo4j_neo4j_cypher_dsl_2020_1_4.xml
627B
springboot-neo4j-demo/.idea/libraries/Maven__org_neo4j_neo4j_ogm_api_4_0_0.xml
585B
springboot-neo4j-demo/.idea/libraries/Maven__org_neo4j_neo4j_ogm_core_4_0_0.xml
592B
springboot-neo4j-demo/.idea/libraries/Maven__org_objenesis_objenesis_3_1.xml
559B
springboot-neo4j-demo/.idea/libraries/Maven__org_opentest4j_opentest4j_1_2_0.xml
584B
springboot-neo4j-demo/.idea/libraries/Maven__org_ow2_asm_asm_5_0_4.xml
523B
springboot-neo4j-demo/.idea/libraries/Maven__org_projectlombok_lombok_1_18_16.xml
582B
springboot-neo4j-demo/.idea/libraries/Maven__org_reactivestreams_reactive_streams_1_0_3.xml
646B
springboot-neo4j-demo/.idea/libraries/Maven__org_skyscreamer_jsonassert_1_5_0.xml
588B
springboot-neo4j-demo/.idea/libraries/Maven__org_slf4j_jul_to_slf4j_1_7_30.xml
585B
springboot-neo4j-demo/.idea/libraries/Maven__org_slf4j_slf4j_api_1_7_30.xml
564B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_boot_spring_boot_2_4_2.xml
631B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_boot_spring_boot_autoconfigure_2_4_2.xml
729B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_2_4_2.xml
687B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_aop_2_4_2.xml
715B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_data_neo4j_2_4_2.xml
764B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_json_2_4_2.xml
722B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_logging_2_4_2.xml
743B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_test_2_4_2.xml
722B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_tomcat_2_4_2.xml
736B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_web_2_4_2.xml
715B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_boot_spring_boot_test_2_4_2.xml
666B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_boot_spring_boot_test_autoconfigure_2_4_2.xml
764B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_data_spring_data_commons_2_4_3.xml
687B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_data_spring_data_neo4j_6_0_3.xml
673B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_spring_aop_5_3_3.xml
604B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_spring_beans_5_3_3.xml
618B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_spring_context_5_3_3.xml
632B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_spring_core_5_3_3.xml
611B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_spring_expression_5_3_3.xml
653B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_spring_jcl_5_3_3.xml
604B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_spring_test_5_3_3.xml
611B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_spring_tx_5_3_3.xml
597B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_spring_web_5_3_3.xml
604B
springboot-neo4j-demo/.idea/libraries/Maven__org_springframework_spring_webmvc_5_3_3.xml
625B
springboot-neo4j-demo/.idea/libraries/Maven__org_xmlunit_xmlunit_core_2_7_0.xml
586B
springboot-neo4j-demo/.idea/libraries/Maven__org_yaml_snakeyaml_1_27.xml
546B
springboot-neo4j-demo/.idea/misc.xml
555B
springboot-neo4j-demo/.idea/modules.xml
255B
springboot-neo4j-demo/.idea/uiDesigner.xml
8.71KB
springboot-neo4j-demo/.idea/workspace.xml
8.71KB
springboot-neo4j-demo/HELP.md
848B
springboot-neo4j-demo/demo.iml
8.93KB
springboot-neo4j-demo/pom.xml
2.32KB
springboot-neo4j-demo/src/
-
springboot-neo4j-demo/src/main/
-
springboot-neo4j-demo/src/main/java/
-
springboot-neo4j-demo/src/main/java/com/
-
springboot-neo4j-demo/src/main/java/com/DemoApplication.java
398B
springboot-neo4j-demo/src/main/java/com/neo4j/
-
springboot-neo4j-demo/src/main/java/com/neo4j/aspect/
-
springboot-neo4j-demo/src/main/java/com/neo4j/aspect/RepositoryAspect.java
773B
springboot-neo4j-demo/src/main/java/com/neo4j/controller/
-
springboot-neo4j-demo/src/main/java/com/neo4j/controller/Neo4jController.java
6.99KB
springboot-neo4j-demo/src/main/java/com/neo4j/domain/
-
springboot-neo4j-demo/src/main/java/com/neo4j/domain/Movie.java
1.18KB
springboot-neo4j-demo/src/main/java/com/neo4j/domain/Person.java
738B
springboot-neo4j-demo/src/main/java/com/neo4j/domain/Roles.java
662B
springboot-neo4j-demo/src/main/java/com/neo4j/domain/SystemEntity.java
838B
springboot-neo4j-demo/src/main/java/com/neo4j/repository/
-
springboot-neo4j-demo/src/main/java/com/neo4j/repository/MovieRepository.java
410B
springboot-neo4j-demo/src/main/java/com/neo4j/repository/PersonRepository.java
352B
springboot-neo4j-demo/src/main/java/com/neo4j/repository/SystemRepository.java
1.74KB
springboot-neo4j-demo/src/main/resources/
-
springboot-neo4j-demo/src/main/resources/application.properties
202B
springboot-neo4j-demo/src/main/resources/static/
-
springboot-neo4j-demo/src/main/resources/static/index.html
103B
springboot-neo4j-demo/src/test/
-
springboot-neo4j-demo/src/test/java/
-
springboot-neo4j-demo/src/test/java/com/
-
springboot-neo4j-demo/src/test/java/com/example/
-
springboot-neo4j-demo/src/test/java/com/example/demo/
-
springboot-neo4j-demo/src/test/java/com/example/demo/DemoApplicationTests.java
215B
springboot-neo4j-demo/target/
-
springboot-neo4j-demo/target/classes/
-
springboot-neo4j-demo/target/classes/application.properties
202B
springboot-neo4j-demo/target/classes/com/
-
springboot-neo4j-demo/target/classes/com/DemoApplication.class
747B
springboot-neo4j-demo/target/classes/com/neo4j/
-
springboot-neo4j-demo/target/classes/com/neo4j/aspect/
-
springboot-neo4j-demo/target/classes/com/neo4j/aspect/RepositoryAspect.class
1.54KB
springboot-neo4j-demo/target/classes/com/neo4j/controller/
-
springboot-neo4j-demo/target/classes/com/neo4j/controller/Neo4jController.class
8.46KB
springboot-neo4j-demo/target/classes/com/neo4j/domain/
-
springboot-neo4j-demo/target/classes/com/neo4j/domain/Movie.class
4.48KB
springboot-neo4j-demo/target/classes/com/neo4j/domain/Person.class
2.61KB
springboot-neo4j-demo/target/classes/com/neo4j/domain/Roles.class
2.85KB
springboot-neo4j-demo/target/classes/com/neo4j/domain/SystemEntity.class
1.24KB
springboot-neo4j-demo/target/classes/com/neo4j/repository/
-
springboot-neo4j-demo/target/classes/com/neo4j/repository/MovieRepository.class
568B
springboot-neo4j-demo/target/classes/com/neo4j/repository/PersonRepository.class
509B
springboot-neo4j-demo/target/classes/com/neo4j/repository/SystemRepository.class
2KB
springboot-neo4j-demo/target/classes/static/
-
springboot-neo4j-demo/target/classes/static/index.html
103B
springboot-neo4j-demo/target/generated-sources/
-
springboot-neo4j-demo/target/generated-sources/annotations/
-
springboot-neo4j-demo/target/generated-test-sources/
-
springboot-neo4j-demo/target/generated-test-sources/test-annotations/
-
springboot-neo4j-demo/target/test-classes/
-
springboot-neo4j-demo/target/test-classes/com/
-
springboot-neo4j-demo/target/test-classes/com/example/
-
springboot-neo4j-demo/target/test-classes/com/example/demo/
-
springboot-neo4j-demo/target/test-classes/com/example/demo/DemoApplicationTests.class
531B

资源内容介绍

springboot集成neo4j,这里使用Spring DATA Neo4j模块来实现。主要使用以下​ Spring Framework ​注释来开发此应用程序:S.No.Spring DATA Neo4j注解 用法1 @GraphEntity 定义域类​Neo4j Entity​2 @GraphID 定义节点或关系​id​3 @GraphProperty 定义节点或关系属性Spring DATA Neo4j模块的附加功能:支持Neo4j属性图模块支持Neo4j Lucence索引支持Neo4j CQL支持Neo4jTemplate
package com.neo4j.controller;import com.neo4j.domain.Movie;import com.neo4j.domain.Person;import com.neo4j.domain.Roles;import com.neo4j.domain.SystemEntity;import com.neo4j.repository.MovieRepository;import com.neo4j.repository.PersonRepository;import com.neo4j.repository.SystemRepository;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.data.domain.Page;import org.springframework.data.domain.PageRequest;import org.springframework.data.domain.Sort;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.*;import java.util.Collections;import java.util.List;@Controller@RequestMapping("/neo4j")public class Neo4jController { @Autowired private MovieRepository movieRepository; @Autowired private PersonRepository personRepository; @Autowired private SystemRepository systemRepository; /** * 使用repository操作图数据 * * @return */ @GetMapping("/testByRepository") @ResponseBody public List<Person> testByRepository() { // 删除所有节点和关系(删除节点会响应删除关联关系),避免后续创建节点重复影响 movieRepository.deleteAll(); personRepository.deleteAll(); // 创建节点 Movie movie = new Movie("流浪地球", "是由中国电影股份有限公司、北京京西文化旅游股份有限公司、郭帆文化传媒(北京)有限公司、北京登峰国际文化传播有限公司联合出品,由郭帆执导,吴京特别出演、屈楚萧、赵今麦、李光洁、吴孟达等领衔主演的科幻冒险电影"); // 添加关系 movie.getActorsAndRoles().add(new Roles(new Person(1994, "刘启"), Collections.singletonList("初级驾驶员"))); movie.getActorsAndRoles().add(new Roles(new Person(2002, "刘培强"), Collections.singletonList("中国航天员"))); movie.getActorsAndRoles().add(new Roles(new Person(1952, "韩子昂"), Collections.singletonList("高级驾驶员"))); movie.getActorsAndRoles().add(new Roles(new Person(2002, "韩朵朵"), Collections.singletonList("初中生"))); movie.getActorsAndRoles().add(new Roles(new Person(1981, "王磊"), Collections.singletonList("救援队队长"))); movie.getActorsAndRoles().add(new Roles(new Person(1991, "李一一"), Collections.singletonList("技术观察员"))); movie.getActorsAndRoles().add(new Roles(new Person(1974, "何连科"), Collections.singletonList("救援队队员"))); movie.getActorsAndRoles().add(new Roles(new Person(1991, "Tim"), Collections.singletonList("中美混血儿"))); movie.getDirectors().add(new Person(1974, "吴京")); // 存入图数据库持久化 movieRepository.save(movie);// 查询 Person person = personRepository.findPersonEntityByName("刘启"); System.out.println(person); Movie movie1 = movieRepository.findMovieByTitle("流浪地球"); System.out.println(movie1); Movie movie2 = movieRepository.findMovieById(movie.getId()); System.out.println(movie2); // 注意:repository的save方法【对应的实体若id一致】则为修改,否则为新建。 person.setBorn(1997); personRepository.save(person); person = personRepository.findPersonEntityByName("刘启"); List<Person> all = personRepository.findAll(); return all; } /** * 新增SystemEntity节点 */ @GetMapping("/addSystemNode") public void addSystemNode() { systemRepository.deleteAll(); SystemEntity systemEntity = new SystemEntity(); systemEntity.setName("系统A"); // 26 systemRepository.save(systemEntity); System.out.println("系统A" + "----------" + systemEntity.getId()); SystemEntity systemEntity1 = new SystemEntity(); systemEntity1.setName("系统B");// 27 systemRepository.save(systemEntity1); System.out.println("系统B" + "----------" + systemEntity1.getId()); SystemEntity systemEntity2 = new SystemEntity(); systemEntity2.setName("系统C");// 28 systemRepository.save(systemEntity2); System.out.println("系统C" + "----------" + systemEntity2.getId()); SystemEntity systemEntity3 = new SystemEntity(); systemEntity3.setName("系统D");// 29 systemRepository.save(systemEntity3); System.out.println("系统D" + "----------" + systemEntity3.getId()); SystemEntity systemEntity4 = new SystemEntity(); systemEntity4.setName("系统E");// 30 systemRepository.save(systemEntity4); System.out.println("系统E" + "----------" + systemEntity4.getId()); SystemEntity systemEntity5 = new SystemEntity(); systemEntity5.setName("系统F");// 31 systemRepository.save(systemEntity5); System.out.println("系统F" + "----------" + systemEntity5.getId()); } @GetMapping("/addInvokeRelation") public void addInvokeRelation() { systemRepository.addInvokeRelation(26L, 27L); systemRepository.addInvokeRelation(26L, 28L); systemRepository.addInvokeRelation(29L, 26L); systemRepository.addInvokeRelation(29L, 28L); systemRepository.addInvokeRelation(29L, 28L); } @GetMapping("/addConsumeRelation") public void addConsumeRelation() { systemRepository.addConsumeRelation(30L, 31L); systemRepository.addConsumeRelation(29L, 30L); } // 分页查询 @GetMapping("/pageListSystem") @ResponseBody public List<SystemEntity> pageListSystem(String name) { PageRequest pageRequest = PageRequest.of(0, 4, Sort.by(Sort.Direction.DESC, "name")); Page<SystemEntity> page = systemRepository.findByName(name, pageRequest); List<SystemEntity> list = page.getContent(); list.forEach(System.out::println); return list; } /** * 删除指定节点直接的关系 DELETE <node1-name>,<node2-name>,<relationship-name> * * @return */ @DeleteMapping("/deleteConsumeRelation") @ResponseBody public String deleteConsumeRelation2() { try { Long from = 28L, to = 29L; systemRepository.deleteConsumeRelation(from, to); } catch (Exception e) { e.printStackTrace(); return "删除关系失败"; } return "删除关系成功"; } @GetMapping("/findSystemById") @ResponseBody public SystemEntity findSystemById(@RequestParam("id") Long id) { SystemEntity systemEntity = systemRepository.findSystemById(id); return systemEntity; } @GetMapping("/getAllSystemNode") @ResponseBody public List<SystemEntity> getAllSystemNode() { List<SystemEntity> all = systemRepository.findAll(); return all; }}

用户评论 (0)

发表评论

captcha