Java RESTful - Comparaison entre JAX-RS et Spring MVC
par
, 15/02/2016 à 17h17 (1849 Affichages)
Auteur : Gokan EKINCI
Date de première publication : 2016-02-15
Licence : CC BY-NC-SA
Vous souhaitez choisir une implémentation RESTful pour votre application Java ? Vous souhaitez effectuer une comparaison entre les classes et annotations JAX-RS et Spring MVC ? Alors cet article est fait pour vous.
JAX-RS Spring MVC Spécification Standard Java EE (JSR-311, JSR-339, JSR-370) Implémentation RESTful de Spring Sommaire des packages Java EE Javadoc Spring Javadoc Classes RESTful Indiquez le nom de vos packages RESTful dans le web.xml Spring 4 : Ajoutez l'annotation @RestController sur votre classe RESTful. Note: @RestController équivaut à @Controller + @ResponseBody.
Spring 3 : Ajoutez l'annotation @Controller sur votre classe RESTful.URI RESTful @Path @RequestMapping Content-type consommé Utilisez MediaType dans @Consumes Utilisez MediaType dans l'attribut consumes de @RequestMapping. Content-type produit Utilisez MediaType dans @Produces Utilisez MediaType dans l'attribut produces de @RequestMapping. Paramètres du chemin @PathParam @PathVariable Paramètres de la requête @QueryParam @RequestParam Valeur par défaut pour les paramètres de la requête ou les paramètres du chemin (JAX-RS seulement pour ce dernier) @DefaultValue Utilisez l'attribut defaultValue de @RequestParam. Types de requêtes @GET, @POST, @PUT, @DELETE Utilisez RequestMethod (enum) dans l'attribut method de @RequestMapping Utilisation des objets personnalisés Vous ne pouvez pas. Utilisez un paramètre de type String, puis marshalizez/unmarshalizez le avec Gson ou Jackson. Ajoutez « <mvc:annotation-driven /> » dans votre fichier de contexte Spring puis utilisez les annotations @ResponseBody et @RequestBody sur vos classes et méthodes. Ceci utilise implicitement la dépendance Jackson pour la sérialisation JSON.
N'hésitez pas à dire ce que vous en pensez, ce que vous auriez aimé que j'ajoute etc
![]()
Plus d'infos sur mon site https://gokan-ekinci.appspot.com