mirror of
https://github.com/OtusTeam/Spring.git
synced 2026-05-30 10:50:42 +00:00
Spring reactive frameworks.
This commit is contained in:
+3
-8
@@ -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);
|
||||
|
||||
|
||||
+8
@@ -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<Account, String> {
|
||||
}
|
||||
-2
@@ -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<Person, String> {
|
||||
|
||||
Flux<Person> findByName(String name);
|
||||
|
||||
@Query("{ 'name': ?0 }")
|
||||
|
||||
Reference in New Issue
Block a user