springboot 2.4以上版本集成neo4j
时间: 2023-10-20 08:14:26 浏览: 156
集成 Neo4j 数据库和 Spring Boot 2.4 及以上版本可以使用 Spring Data Neo4j 2。Spring Data Neo4j 2 是一个对象图映射框架,它提供了一种使用 Java 类来表示和操作图形数据的方法。它使用 Neo4j 的 Java 驱动程序来连接到数据库,并提供了一些方便的注释和 API,以简化与 Neo4j 的交互。
以下是在 Spring Boot 2.4 中使用 Spring Data Neo4j 2 的基本步骤:
1. 添加 Spring Data Neo4j 2 和 Neo4j 驱动程序的 Maven 依赖项:
```xml
<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>
<version>4.2.2</version>
</dependency>
```
2. 配置 Neo4j 数据库连接信息:
```properties
spring.data.neo4j.uri=bolt://localhost:7687
spring.data.neo4j.username=neo4j
spring.data.neo4j.password=password
```
3. 创建 Neo4j 实体类:
```java
@Node
public class Person {
@Id @GeneratedValue private Long id;
private String name;
@Relationship(type = "FRIEND_OF", direction = Relationship.Direction.OUTGOING)
private List<Person> friends;
// getters and setters
}
```
4. 创建 Neo4j 存储库接口:
```java
@Repository
public interface PersonRepository extends Neo4jRepository<Person, Long> {
List<Person> findByName(String name);
}
```
5. 在 Spring Boot 应用程序中使用 Neo4j 存储库:
```java
@Autowired
private PersonRepository personRepository;
@Transactional
public void addFriend(String name1, String name2) {
Person person1 = personRepository.findByName(name1).get(0);
Person person2 = personRepository.findByName(name2).get(0);
person1.getFriends().add(person2);
personRepository.save(person1);
}
```
以上就是在 Spring Boot 2.4 中集成 Neo4j 的基本步骤。你可以在实体类中使用注释来定义节点和关系,使用存储库接口来执行 CRUD 操作,使用 Spring Boot 的事务管理来确保数据的一致性。
阅读全文