From 6fad82f578bdc7db2638ac0924833ea4d4c0c968 Mon Sep 17 00:00:00 2001 From: saroff Date: Thu, 13 Aug 2020 11:24:32 +0300 Subject: [PATCH] Spring reactive frameworks. --- .../src/main/java/ru/otus/spring/Main.java | 11 +++-------- .../ru/otus/spring/repostory/AccountRepository.java | 8 ++++++++ .../ru/otus/spring/repostory/PersonRepository.java | 2 -- 3 files changed, 11 insertions(+), 10 deletions(-) create mode 100644 2020-05/spring-19/spring-19-reactive-spring-data/src/main/java/ru/otus/spring/repostory/AccountRepository.java diff --git a/2020-05/spring-19/spring-19-reactive-spring-data/src/main/java/ru/otus/spring/Main.java b/2020-05/spring-19/spring-19-reactive-spring-data/src/main/java/ru/otus/spring/Main.java index 8659e52c..0ef4e8d4 100644 --- a/2020-05/spring-19/spring-19-reactive-spring-data/src/main/java/ru/otus/spring/Main.java +++ b/2020-05/spring-19/spring-19-reactive-spring-data/src/main/java/ru/otus/spring/Main.java @@ -12,7 +12,9 @@ import org.springframework.data.mongodb.core.ReactiveMongoTemplate; import org.springframework.data.mongodb.repository.config.EnableReactiveMongoRepositories; import reactor.core.Disposable; import reactor.core.publisher.Flux; +import ru.otus.spring.domain.Account; import ru.otus.spring.domain.Person; +import ru.otus.spring.repostory.AccountRepository; import ru.otus.spring.repostory.PersonRepository; @SpringBootApplication @@ -22,14 +24,7 @@ public class Main { ApplicationContext context = SpringApplication.run(Main.class); PersonRepository repository = context.getBean(PersonRepository.class); - - repository.saveAll( - Flux.fromArray(new String[]{"Pushkin", "Lermontov"}) - .map(Person::new) - ).subscribe(); - - Disposable flux = repository.findAll() - .subscribe(p -> System.out.println(p.getName())); + AccountRepository accountRepository = context.getBean(AccountRepository.class); Thread.sleep(20000); diff --git a/2020-05/spring-19/spring-19-reactive-spring-data/src/main/java/ru/otus/spring/repostory/AccountRepository.java b/2020-05/spring-19/spring-19-reactive-spring-data/src/main/java/ru/otus/spring/repostory/AccountRepository.java new file mode 100644 index 00000000..22bd9275 --- /dev/null +++ b/2020-05/spring-19/spring-19-reactive-spring-data/src/main/java/ru/otus/spring/repostory/AccountRepository.java @@ -0,0 +1,8 @@ +package ru.otus.spring.repostory; + +import org.springframework.data.mongodb.repository.ReactiveMongoRepository; +import ru.otus.spring.domain.Account; +import ru.otus.spring.domain.Person; + +public interface AccountRepository extends ReactiveMongoRepository { +} diff --git a/2020-05/spring-19/spring-19-reactive-spring-data/src/main/java/ru/otus/spring/repostory/PersonRepository.java b/2020-05/spring-19/spring-19-reactive-spring-data/src/main/java/ru/otus/spring/repostory/PersonRepository.java index 0485aa38..ddd15cef 100644 --- a/2020-05/spring-19/spring-19-reactive-spring-data/src/main/java/ru/otus/spring/repostory/PersonRepository.java +++ b/2020-05/spring-19/spring-19-reactive-spring-data/src/main/java/ru/otus/spring/repostory/PersonRepository.java @@ -7,9 +7,7 @@ import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; import ru.otus.spring.domain.Person; - public interface PersonRepository extends ReactiveMongoRepository { - Flux findByName(String name); @Query("{ 'name': ?0 }")