Скажите, что моя функция контроллера пружины получает большой объем данных. Я хочу вернуть 200 OK, учитывая, что данные структурированы правильно, и после этого Я хочу выполнить обработку, которая может занять некоторое время.Как отправить ответ перед действиями весной mvc
Насколько я понимаю, единственный способ отправки ответа - return command. Но я не хочу останавливать функцию отправки ответа.
Существуют ли другие способы отправки ответа клиенту в середине функции?
Создание нового потока прокрутки очевидно, но другие языки (JS) позволяют вам обрабатывать его более элегантно.
@RequestMapping(value = Connectors.CONNECTOR_HEARTBEAT, method = RequestMethod.POST)
public ResponseEntity<String> doSomething(@RequestBody List<Message> messages) {
HttpStatus code = (messages!=null && !messages.isEmpty()) ? HttpStatus.OK
: HttpStatus.NOT_FOUND;
return new ResponseEntity<String>(res, code);
// how do I add code here??
}
использовать метод @Async, который мог бы обернуть все, что вы хотите запустить, он будет обрабатываться с помощью другого потока – freakman
[Это может помочь] (http://stackoverflow.com/a/17176660/3143670) –