severinevieu / API_REST

0 stars 0 forks source link

Correction #1

Open pjvilloud opened 5 years ago

pjvilloud commented 5 years ago

Acquis. Bon travail, quelques éléments de cours à revoir sur Spring Data

Ton Repository est vide ! Tu as du oublier de pusher...

Ces deux méthodes save sont à supprimer ! Save existe déjà pour Artist grâce à l'implémentation de JpaRepository et la méthode save d'Album sera dans le repository d'Album.

@Repository
public interface AlbumRepository extends JpaRepository<Artist, Long> {
    Artist save(Artist artist);
    Album save(Album album);
    // @EntityGraph(attributePaths = "artists")
}

Ici il aurait fallu plutôt utiliser findByNameContainingIgnoreCase pour ne pas faire de recherche stricte.

Page<Artist> findByNameIgnoreCase(String name, Pageable pageable);

Attention pas de ResponseStatus ici tu vas systématiquement renvoyer une 404 même quand tu trouve l'artiste !

@RequestMapping(method = RequestMethod.GET, value = "/{id}")
    @ResponseStatus(HttpStatus.NOT_FOUND)
    public Artist findById(@PathVariable("id") Long id) throws EntityNotFoundException{

Le GlobalExceptionHandler pourraît être plus complet.

severinevieu commented 5 years ago

Merci pour votre retour