ad545fc490b4e834367a3e12d5f58e657702ddaf
This commit closes #40 by updating Spring Data Commons to RC3 and Spring Boot to M6. It also drops management of Kotlin and Project Reactor dependencies. Instead, it relies on the management done by Spring Data Commons in RC3. Furthermore, it restores convergences between the dependencies of Spring Data R2DBC and R2DBC-H2 by using R2DBC’s bom as well.
This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
= Spring Data Neo4j⚡️RX :sectanchors: // tag::versions[] :spring-data-neo4j-rx_version: 1.0.0-beta01 :groupId: org.neo4j.springframework.data :artifactId: spring-data-neo4j-rx :artifactIdStarter: spring-data-neo4j-rx-spring-boot-starter :neo4j_version: 4.0.0-alpha09 :spring-boot_version: 2.2.0.M6 // end::versions[] image:https://img.shields.io/maven-central/v/org.neo4j.springframework.data/spring-data-neo4j-rx.svg[Maven Central,link=http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.neo4j.springframework.data%22%20AND%20a%3A%22spring-data-neo4j-rx%22] [abstract] -- Spring Data Neo4j⚡️RX - or in short _SDN/RX_ - is an ongoing effort to create the next generation of Spring Data Neo4j, with full reactive support and lightweight mapping. SDN/RX will work with immutable entities, regardless whether written in Java or Kotlin. -- The primary goal of the https://projects.spring.io/spring-data[Spring Data] project is to make it easier to build Spring-powered applications that use new data access technologies such as non-relational databases, map-reduce frameworks, and cloud based data services. The SDN/RX project aims to provide a familiar and consistent Spring-based programming model for integrating with the https://neo4j.com/[Neo4j] Graph Database. == Manual For a gentle introduction and some getting started guides, please use our link:docs/manual.adoc[Manual]. == Getting Started Here is a quick teaser of a reactive application using Spring Data Repositories in Java, without using Spring Boot. [source,java] ---- @Node public class Person { private Long id; private String name; public Person(String name) { this.name = name; } } @Repository interface PersonRepository extends ReactiveNeo4jRepository<Person, Long> { Flux<Person> findAllByName(String name); Flux<Person> findAllByNameLike(String name); } @Service class MyService { @Autowired private final PersonRepository repository; @Transactional public Flux<Person> doWork() { Person emil = new Person("Emil"); Person gerrit = new Person("Gerrit"); Person michael = new Person("Michael"); // Persist entities and relationships to graph database return repository.saveAll(Flux.just(emil, gerrit, michael)); } } @Configuration @EnableReactiveNeo4jRepositories @EnableTransactionManagement class MyConfiguration extends AbstractReactiveNeo4jConfig { @Bean public Driver driver() { return GraphDatabase.driver("bolt://localhost:7687", AuthTokens.basic("neo4j", "passphrase")); } @Override protected Collection<String> getMappingBasePackages() { return Collections.singletonList(Person.class.getPackage().getName()); } } ---- TIP: SDN/RX is not only about reactive support, all features are available in both ways: Imperative and reactive, we only prefer to showcase the new reactive database access support here. === Maven configuration Add the Maven dependency: [source,xml,subs="verbatim,attributes"] ---- <dependency> <groupId>{groupId}</groupId> <artifactId>{artifactId}</artifactId> <version>{spring-data-neo4j-rx_version}</version> </dependency> ---- Nowadays, people prefer Spring Boot and we got you covered with a starter. Please consult our link:docs/manual.adoc[manual] for more information.
Description
Languages
Java
96.4%
CSS
2.2%
AspectJ
0.8%
HTML
0.4%