¿Qué necesito para crear un servidor API RESTful en Java?


Me gustaría construir mi propio servidor API RESTful y no tengo idea de lo que necesito para eso.

Les contaré un poco sobre el proyecto:

En un Servicio web (www.mysite.com/) los usuarios pueden registrarse y administrar su cuenta y así sucesivamente. Pero también pueden usar la API RESTful (mysite.com/api/...) y puede hacer allí más o menos lo mismo a través de DESCANSO.

¿Cuál es una buena manera de darse cuenta de eso? ¿Necesito usar jetty o algo similar? ¿Debo dividir el servicio web y la api restful ? lo que yo una buena arquitectura para que?

Gracias:)

Author: FullStackDeveloper, 2012-03-30

5 answers

Puede usar Spring controller para construir un servidor restful. Se puede ejecutar en tomcat o embarcadero no importa.

Compruebe esta url : http://static.springsource.org/spring/docs/3.0.0.M3/spring-framework-reference/html/ch18s02.html

 12
Author: erimerturk,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-03-30 13:02:29

Tomcat y Jersey son fáciles de poner en marcha. He tenido algunos problemas con Tomcat 7 y Jersey, pero con Tomcat 6 fue sencillo.

Este tutorial es bastante fácil de seguir. Es un poco viejo, pero el principio sigue siendo el mismo.

 4
Author: Paaske,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-03-30 13:10:03

IBM proporciona un buen conjunto de información y tutoriales sobre la construcción de servicios web RESTful con Java (Link). Después de ejecutar el servicio web, puede implementarlo en Amazon. Eche un vistazo a AWS Elastic Beanstalk .

 3
Author: mert,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-11-10 10:47:09

Encontré un ejemplo sencillo en http://coder2design.com/rest-web-services / para construir una aplicación REST.

  • El esquema XML(xsd) se utiliza para crear clases de dominio.
  • Eclipse EE se utiliza como IDE y Maven para la construcción.
  • Jersey como marco para el DESCANSO
  • Hibernar para la capa de persistencia.
  • MySQL como DB

Todas las demás configuraciones están bien explicadas.

 1
Author: Jatinder Pal,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-07-07 11:52:03

En 2017 una de las mejores soluciones sería usar spring boot. Le da grandes efectos sin escribir toneladas de código.

@RestController
public class HelloController {

    @RequestMapping("/")
    public String index() {
        return "Greetings from Spring Boot!";
    }

}
 1
Author: Marcin Szymczak,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-06-16 07:08:50