Conversation
TyutterinYakov
left a comment
There was a problem hiding this comment.
Добрый день! Отметил оставшиеся небольшие недочеты) Хорошего дня! Если возникнут вопросы - пиши в пачку, буду рад помочь🌞
|
|
||
| @PutMapping("/{id}/friends/{friendId}") | ||
| public User addToFriends(@PathVariable Integer id, @PathVariable Integer friendId) { | ||
| public ResponseEntity addToFriends(@PathVariable Integer id, @PathVariable Integer friendId) { |
There was a problem hiding this comment.
Возврат ResponseEntity для установки код ответа 200 - не требуется, так как это стандартный код ответа, если все хорошо)
|
|
||
| @DeleteMapping("/{id}/friends/{friendId}") | ||
| public User removeToFriends(@PathVariable Integer id, @PathVariable Integer friendId) { | ||
| public ResponseEntity removeToFriends(@PathVariable Integer id, @PathVariable Integer friendId) { |
There was a problem hiding this comment.
Возврат ResponseEntity для установки код ответа 200 - не требуется, так как это стандартный код ответа, если все хорошо)
Можно было бы сделать метод void
| @RequiredArgsConstructor | ||
| public class MPAController { | ||
|
|
||
| private final MpaDaoImpl mpaDao; |
There was a problem hiding this comment.
Уровень контроллера не должен работать напрямую с уровнем доступа к данным) Всех взаимодействие должно осуществляться через прослойку в виде сервиса)
| @RequiredArgsConstructor | ||
| public class GenreController { | ||
|
|
||
| private final GenreDao genreDao; |
There was a problem hiding this comment.
Уровень контроллера не должен работать напрямую с уровнем доступа к данным) Всех взаимодействие должно осуществляться через прослойку в виде сервиса)
|
|
||
| @PutMapping("/{id}/like/{userId}") | ||
| public Film addLike(@PathVariable Integer id, @PathVariable Integer userId) { | ||
| public ResponseEntity<?> addLike(@PathVariable Integer id, @PathVariable Integer userId) { |
There was a problem hiding this comment.
Аналогично и здесь, метод следует сделать void
|
|
||
| @Override | ||
| public List<User> getAllFriends(Integer id) { | ||
| if (contains(id)) { |
There was a problem hiding this comment.
Аналогично, подобные проверки следует вынести на уровень сервиса, так как это часть бизнес-правил, не очень принято выбрасывать исключение на уровне репозитория)
|
|
||
| @Override | ||
| public List<User> getMutualFriends(Integer idUser, Integer otherIdUser) { | ||
| if (idUser.equals(otherIdUser)) { |
There was a problem hiding this comment.
Аналогично, подобные проверки следует вынести на уровень сервиса, так как это часть бизнес-правил, не очень принято выбрасывать исключение на уровне репозитория)
| throw new IncorrectArgumentsException(UserDbStorage.class); | ||
| } | ||
| if (!contains(idUser)) { | ||
| throw new EntityNotFoundException(UserDbStorage.class); |
There was a problem hiding this comment.
Аналогично, подобные проверки следует вынести на уровень сервиса, так как это часть бизнес-правил, не очень принято выбрасывать исключение на уровне репозитория)
|
|
||
| @Override | ||
| public User upDate(User user) { | ||
| SqlRowSet usersRows = jdbcTemplate.queryForRowSet("SELECT * FROM mov_users WHERE id = ?", user.getId()); |
There was a problem hiding this comment.
Аналогично, подобные проверки следует вынести на уровень сервиса, так как это часть бизнес-правил, не очень принято выбрасывать исключение на уровне репозитория)
(предложение)Но можно было бы обойтись здесь даже без дополнительно запроса, а проверить то, что вернул метод update, так как он вернет значение int, равное количеству обновленных строк)
|
|
||
| @Override | ||
| public Film upDate(Film film) { | ||
| SqlRowSet filmsRows = jdbcTemplate.queryForRowSet("select * from films where id = ?", film.getId()); |
There was a problem hiding this comment.
Аналогично, подобные проверки следует вынести на уровень сервиса, так как это часть бизнес-правил, не очень принято выбрасывать исключение на уровне репозитория)
(предложение)Но можно было бы обойтись здесь даже без дополнительно запроса, а проверить то, что вернул метод update, так как он вернет значение int, равное количеству обновленных строк)
TyutterinYakov
left a comment
There was a problem hiding this comment.
Добрый день! Поздравляю с успешной сдачей спринта! Сил и терпения на этом сложном, но интересном пути🌞 Успехов в обучении и прекрасного дня!🎇☀️
No description provided.