springboot整合neo4j
2024-10-08 01:15:41
刚开始按网上博客搭建 spring boot 和 neo4j一直报sessionFactory找不到,直到下载了spring-data-neo4j的实例demo对比才搭建成功,而且用户名是neo4j,不是创建一个数据库时的名字,搞了几个小时终于搞成功了。以后还是多看官方文档,搜来搜去,什么鬼都搜不到。记录一下自己踩的坑。
工程地址:https://github.com/CNXXPP/neo4j-demo
pom文件
是springboot进行过封装的spring-boot-starter-data-neo4j提供了一些基础的方法,有点像spring-data-jpa
-
<?xml version="1.0" encoding="UTF-8"?>
-
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
<modelVersion>4.0.0</modelVersion>
-
-
<groupId>com.xp</groupId>
-
<artifactId>neo4j-demo</artifactId>
-
<version>0.0.1-SNAPSHOT</version>
-
<packaging>jar</packaging>
-
-
<name>neo4j-demo</name>
-
<description>Demo project for Spring Boot</description>
-
-
<parent>
-
<groupId>org.springframework.boot</groupId>
-
<artifactId>spring-boot-starter-parent</artifactId>
-
<version>2.0.3.RELEASE</version>
-
<relativePath/> <!-- lookup parent from repository -->
-
</parent>
-
-
<properties>
-
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
-
<java.version>1.8</java.version>
-
</properties>
-
-
<dependencies>
-
<dependency>
-
<groupId>org.springframework.boot</groupId>
-
<artifactId>spring-boot-starter-data-neo4j</artifactId>
-
</dependency>
-
<!--<dependency>-->
-
<!--<groupId>org.neo4j.driver</groupId>-->
-
<!--<artifactId>neo4j-java-driver</artifactId>-->
-
<!--</dependency>-->
-
-
<dependency>
-
<groupId>org.springframework.boot</groupId>
-
<artifactId>spring-boot-starter-test</artifactId>
-
<scope>test</scope>
-
</dependency>
-
</dependencies>
-
-
<build>
-
<plugins>
-
<plugin>
-
<groupId>org.springframework.boot</groupId>
-
<artifactId>spring-boot-maven-plugin</artifactId>
-
</plugin>
-
</plugins>
-
</build>
-
-
-
</project>
-
@NodeEntity(label = "user")
-
public class UserNode implements Serializable {
-
-
@Id @GeneratedValue
-
private Long id;
-
-
private String name;
-
-
private String userId;
-
-
private String companyId;
-
-
public String getName() {
-
return name;
-
}
-
-
public void setName(String name) {
-
this.name = name;
-
}
-
-
public String getUserId() {
-
return userId;
-
}
-
-
public void setUserId(String userId) {
-
this.userId = userId;
-
}
-
-
public String getCompanyId() {
-
return companyId;
-
}
-
-
public void setCompanyId(String companyId) {
-
this.companyId = companyId;
-
}
-
-
@Override
-
public String toString() {
-
return "UserNode{" +
-
"id=" + id +
-
", name='" + name + '\'' +
-
", userId='" + userId + '\'' +
-
", companyId='" + companyId + '\'' +
-
'}';
-
}
-
}
dao类
-
@Repository
-
public interface UserRepository extends Neo4jRepository<UserNode,Long>{
-
-
}
测试类
-
@Component
-
public class UserRepositoryTest extends Neo4jDemoApplicationTests{
-
-
Logger logger = LoggerFactory.getLogger(UserRepositoryTest.class);
-
-
@Autowired
-
UserRepository userRepository;
-
-
@Test
-
public void createUserNode(){
-
System.out.println(userRepository);
-
UserNode userNode = new UserNode();
-
userNode.setName("xupan");
-
userNode.setUserId("123");
-
UserNode save = userRepository.save(userNode);
-
logger.info(save.toString());
-
Assert.assertTrue(save!=null);
-
}
-
-
@Test
-
public void delAll(){
-
userRepository.deleteById(new Long(27));
-
-
}
-
}
启动类的@EnableNeo4jRepositories一定要加
-
@SpringBootApplication
-
@EnableNeo4jRepositories
-
public class Neo4jDemoApplication {
-
-
public static void main(String[] args) {
-
SpringApplication.run(Neo4jDemoApplication.class, args);
-
}
-
}
Application.yml
-
spring:
-
data:
-
neo4j:
-
uri: bolt://localhost:7687
-
username: neo4j
-
password: 1123
原文地址:https://blog.csdn.net/d597180714/article/details/81079848
最新文章
- 好压(HaoZip)的命令行模式用法介绍
- SpringMvc静态资源加载出错
- VI 命令 gg 跳到第一行,dG 删除后面的所有内容
- 强大的UML建模工具——StarUML
- hihocoder 1037 数字三角形
- DTD学习笔记
- java最全时间类及用法
- webpack4 splitChunksPlugin &;&; runtimeChunkPlugin 配置杂记
- 使用centos 7安装conpot
- 子类化QTreeWidgetItem实现增加Item的属性
- 微信小程序开发总结(详细)
- Qbot回归,已感染5.4万台计算机
- fzu 1330:Center of Gravity(计算几何,求扇形重心)
- rsync配置文件的参数详解
- Windows store app[Part 4]:深入WinRT的异步机制
- Asp.Net Web API 2 官网菜鸟学习系列导航
- 支付宝VIE的罪与罚
- Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.
- redis原理及实现
- c#关闭excel进程失败的解决方法
热门文章
- 看了这么N多天DELPHI,突然我有个感觉
- github的账号密码 redis windows版连接方式
- Django项目:CRM(客户关系管理系统)--59--49PerfectCRM实现CRM客户报名流程学生合同表单验证
- stash解决git合并冲突问题
- python学习笔记3_数据载入、存储及文件格式
- 【One by one系列】一步步部署.net core应用
- Luogu P2486 [SDOI2011]染色(树链剖分+线段树合并)
- golang 程序 在linux 出现 段错误
- IDEA工具实现反编译操作
- 计算机组成原理(电脑硬件&;语言分类)