Я пытался сделать простой бэкэнд для входа пользователя.
Работает нормально, если я не использую потоки, но когда я пытаюсь реализовать многопоточность, по какой-то причине он прерывается.
Сейчас я просто пытаюсь сделать что-то столь же простое, как получение информации всех пользователей из таблицы User в формате JSON.Проблема в том, что контроллер Rest ничего не возвращает почтальону, хотя dbActions.getAll()
возвращает правильный список.
Нет ошибок, нет исключений, ничего.Я мог бы действительно использовать некоторую помощь.Ниже приведены части моего кода, которые я пытаюсь заставить работать.
Контроллер отдыха:
@Async
@RequestMapping(value="/view", method =RequestMethod.GET)
public List<User> viewAll() {
try {
List<User> list = new ArrayList<>();
list = dbActions.getAll();
return list;
}catch(Exception e) {
e.printStackTrace();
return null;
}
}
Служба dbActions:
public List<User> getAll() {
List<User> results = new ArrayList<>();
CompletableFuture<Void> future;
try {
future = CompletableFuture.runAsync(new Runnable() {
public void run() {
userRepo.findAll().forEach(results::add);
}
});
future.get();
return results;
} catch (Exception e) {
e.printStackTrace();
return results;
}
}