#191 Код-ревью контроллера пользователей и карт
Сделать код-ревью:
@Controller
@RequestMapping(path = "/users")
public class MainController {
@Autowired
private RestTemplate restTemplate;
@Autowired
private UserRepository userRepository;
@Autowired
private CardRepository cardRepository;
@RequestMapping(path = "/getUser", method = RequestMethod.GET)
public User getUser(String username) {
User user = restTemplate.getForObject("/loadUser/{username}", User.class, username);
Optional<User> dbUser = userRepository.findAll()
.stream()
.filter(u -> u.getUsername().equals(username))
.findAny();
if (dbUser.isEmpty()) {
return userRepository.save(user);
}
return dbUser.get();
}
@RequestMapping(path = "/getCards", method = RequestMethod.GET)
public List<Card> getCards(String username) {
Optional<User> user = userRepository.findAll()
.stream()
.filter(u -> u.getUsername().equals(username))
.findAny();
if (user.isPresent()) {
return user.get().getCards();
}
return null;
}
}Разбор вопроса
Войди, чтобы начать диалог
Ментор ведёт диалог по текущему вопросу и учитывает предыдущие сообщения.
Войти
Доступно с Premium
Это лишь одно из решений, доступных с Premium. А ещё:
- 250+ продвинутых лекций
- 1300+ практических заданий
- 500+ решений задач с реальных собеседований
- Именные сертификаты Java Hub
- Расширенный доступ к AI-ментору