Как вернуть Flux как ответ в Spring Web FluxJAVA

Программисты JAVA общаются здесь
Anonymous
Как вернуть Flux как ответ в Spring Web Flux

Сообщение Anonymous »

Я не могу вернуть Flux в ответ на . В моем репозитории я возвращаю Flux . Теперь я хочу обработать этот ответ в контроллере с помощью Switchifempty для обработки 404 кода ошибки с помощью Switchifempty . Ниже я попробовал:
Репозиторий

Код: Выделить всё

public interface StudentRepository extends R2dbcRepository{

Flux findByFirstName(String firstName);

}
service

Код: Выделить всё

public Flux getStudentByName(String name){
return repo.findByFirstName(name);
}
контроллер (вот где я не могу создать ответ)

Код: Выделить всё

@GetMapping(value="student/name/{name}")
public Flux getStudentByName(@PathVariable(name = "name",required = true)String name) {
Flux map = service.getStudentByName(name)
.switchIfEmpty(Mono.error(new NoSuchElementException("student not found")))
.map(stu->new ResponseEntity(Mono.just(stu),HttpStatus.OK));
return map;
}
, поскольку я получал только одну поддержку ответа Я попробовал с кодом ниже:

Код: Выделить всё

@GetMapping(value="student/name/{name}")
public Flux getStudentByName(@PathVariable(name = "name",required = true)String name) {
Flux flatMap = service.getStudentByName(name)
.switchIfEmpty(Mono.error(new NoSuchElementException("student not found")))
.flatMap(stu->Flux.just(new ResponseEntity(stu,HttpStatus.OK)));
return flatMap;
}
Я все еще получаю одно и то же исключение, то есть только один поддерживаемый ответом
Я обработал noshelementexception как глобальное исключение.
Как я возвращаю Flux insude insee insee insee insee in insee in insure insee presection .. или наоборот. Flux . Каким подходом я должен пойти, чтобы вернуть объект потока.

Подробнее здесь: https://stackoverflow.com/questions/796 ... g-web-flux

Вернуться в «JAVA»