rest - easy - ¿Qué es una implementación JAX-RS?
resteasy maven (2)
He estado intentando averiguar cómo usar JAX-RS durante bastante tiempo. Comencé desde los conceptos más básicos y luego comprendí gradualmente la programación con estilo de anotación, el significado de @Path, @Get, @Post, etc.
A mi entender, en cuanto a lo que se ha mencionado en muchos lugares, JAX-RS es un marco que se centra en la aplicación de anotaciones Java a objetos Java simples (Página 27, Bill Burke, RESTful Java).
Entonces me confundí más allá de este punto. Si JAX-RS en sí mismo es un marco que define las API que tratan con anotaciones para implementar el servicio web RESTful, ¿cuál es el significado de "implementación de JAX-RS" como "Jersey" y "JBoos Resteasy"? ¿Otra capa encima de JAX-RS? ¿Por qué los necesitamos?
¿Podría alguien proporcionarme algunas ideas al respecto? ¡¡¡Muchas gracias!!!
JAX-RS es un estándar definido en la Solicitud de especificación de Java 311 ( JSR-311 ) y Jersey / RESTEasy son implementaciones de la misma.
Ser implementaciones significa que la especificación dice "si pones @GET("/foo")
en un método ( bar()
), puedes acceder a los datos X" - ahora en un servidor de aplicaciones, alguien tiene que entrar y leer tu código desplegado, analizar el código de bytes con la anotación @GET
y luego si el usuario realmente busca, por ejemplo, http: // localhost / foo obtener esta solicitud web para llegar a bar()
y traducir el valor de retorno de bar()
en una respuesta http (por ejemplo, en representación XML o JSON).
Por lo tanto, la especificación con el nombre "JAX-RS" solo proporciona la sintaxis y la semántica de, por ejemplo, @GET, pero el trabajo de analizar solicitudes, llamar a los métodos correctos, ordenar los valores de resultados, etc. debe hacerse mediante un paquete que implemente el Especulación.
El trabajo en la versión 2.0 del estándar comenzó como JRS-339 .
Ver también http://en.wikipedia.org/wiki/Jax-rs
JAX-RS es una especificación para los servicios web RESTful con Java. Existe una implementación de referencia que se incluye en Java EE, pero dado que es una especificación, se pueden escribir otros marcos para implementar la especificación, que incluye Jersey, Resteasy y otros.