2011-01-23 42 views
14

¿Cuál sería la forma más fácil de exponer una base de datos MySQL usando una interfaz REST?Exponer la base de datos/tabla MySQL usando REST

Las únicas pautas que puedo encontrar en Internet son simplemente usar NetBeans. No soy un gran admirador de NetBeans ...

Me gustaría recuperar eso y poder actualizar los datos en la base de datos usando esta interfaz REST.

FYI, esto es para una aplicación de iPhone en la que estoy trabajando actualmente.

+0

¿Qué lenguaje de programación de back-end tiene acceso/experiencia? –

+0

Prefiero algo que ver con Java o PHP – aherlambang

Respuesta

4

Como comentó dorkitude, depende de qué idiomas puede usar/querer usar.

Encontré el proyecto PHPRestSQL que parece hacer lo que quiere: http://phprestsql.sourceforge.net/ - aunque no lo he probado.

+1

¡Esto realmente se ve increíble y es fácil de probar! gracias por sugerir esto – aherlambang

+1

Esto fue fácil de poner en marcha, pero es demasiado simplista. Estoy intentando descubrir cómo usarlo con diferentes rutas para devolver la tabla completa, o usar una consulta para otras claves además de la ID principal, o una combinación de parámetros de consulta en la ruta, o devolver un valor único como tú "drill-down" a través de la tabla/row_id/property_key .... Quizás sería algo así como: http: // localhost/DB/persons/gender = male & updated_since = 2011-02-12 –

+1

Greg, todo lo anterior es posible con/db, vea más en http://slashdb.com Tiene una API REST automática y permite definir consultas SQL arbitrarias para ejecutarlas a través de la API REST. Sin estado y muy RESTful. –

0

Solo para solicitudes GET, DBSlayer parece prometedor. Aquí hay un google one que también parece interesante. No lo he usado/

5

NetBeans es solo un IDE. No tiene nada que ver con REST. Si está utilizando Java, eche un vistazo a Restlet o Jersey. Personalmente prefiero Jersey, pero ambos funcionan.

+0

Jersey principalmente está asociado con el servidor Tomcat ... – aherlambang

+0

No es cierto. Jersey es una implementación de JAX-RS y no tiene nada que ver con los servidores de aplicaciones. Debido a que Jersey se implementa en Java, necesitará un servidor de aplicaciones que le permita alojar su aplicación Java, como Tomcat, por ejemplo. Para su información, tengo mi aplicación Jersey ejecutándose en el servidor Websphere, si eso significa algo. – limc

+0

Creo que entiendo tu punto ... Entonces primero necesitaría conectarme con la base de datos MySQL usando el controlador JDBC y luego usar el marco Restlet para generar el servicio web REST. Este código se puede poner en cualquier servidor web? ¿No es un servidor Tomcat? – aherlambang

6

Otra opción es restSQL, un marco de persistencia ultraligero. http://restsql.org. Es compatible con MySQL y PostgreSQL y se ejecuta en un contenedor Java EE estándar, p. Apache Tomcat.

restSQL es una capa de acceso a datos muy poco convencional. restSQL no es una vista orientada a objetos de la base de datos. Presenta "vistas" planas o jerárquicas de tablas de bases de datos relacionales. Estas vistas son consultables y actualizables a través de una simple API de HTTP o Java basada en REST. La interfaz HTTP se basa en los principios de REST, que utilizan las funciones incorporadas de HTTP, en lugar de abstraerse de ellos.

+0

restSQL está dirigido a aplicaciones OLTP que necesitan acceso CRUD para consultas ** básicas **, p. Ej. Group By consultas no son compatibles (todavía). – sactiw

2

Si alguna vez se busca un back-end Java, eche un vistazo a la respuesta que publiqué para Need to write a RESTful JSON service in Java que describe los pasos que puede seguir para conectarse a la base de datos y crear un servicio web RESTful utilizando lo siguiente.

  • IDE: Eclipse IDE para Java EE Desarrolladores (Kepler), viene con Maven construida en
  • Base de datos: MySQL (también hace uso de MySQL Workbench)
  • Application Server: GlassFish 4.0
  • Java EE 7
    • Jersey para JAX-RS (implementación predeterminada en GlassFish) Capa de servicio RESTful.
    • EclipseLink para JPA (implementación predeterminada en GlassFish) Capa de persistencia.
  • Cualquier cliente REST para la prueba: (por ejemplo cartero)
-1

Es posible que desee echar un vistazo a jongo. Es una API REST para JDBC.

5

MySQL 5.7.4 y sobre el trabajo con el plugin HTTP, que ofrece una API REST HTTP.

SQL: SELECT * FROM simple ORDER BY id 
URL: http://127.0.0.1:8080/sql//SELECT+%2A+FROM+simple+ORDER+BY+id 

Sin embargo, en la actualidad viene con un no aptos para PRODUCCIÓN advertencia.

Blog announcement.

Docs.

0

campanadas me encontré con loopback.io y he estado jugando con él. Es una gran herramienta para crear fácilmente puntos finales api para mysql. Puede instalar un conector mysql y luego descubrir todas sus tablas mysql y puede crearlas en modelos. Realmente no conozco mucha programación pero es bastante fácil donde obtuve una API para mi trabajo en sql en un día. Tengo 19 tablas y creó fácilmente mis puntos finales.

http://loopback.io

0

En 2017, es posible utilizar PHP-CRUD-API. Es un script PHP de archivo único que agrega una API REST a una base de datos MySQL 5.5 InnoDB. PostgreSQL 9.1 y MS SQL Server 2012 también son totalmente compatibles. Incluso hay soporte limitado para SQLite 3.

Descargo de responsabilidad: Lo escribí.

2

Otra opción es Slash db que "genera automáticamente una API REST a partir de bases de datos relacionales".

A partir de junio de 2017, funciona para bases de datos SQL sin ajustes, pero otros tipos de tiendas de datos requieren un complemento desarrollado a medida.

Solo he leído sobre este servicio (no un usuario). No tengo ninguna afiliación con ellos.

Cuestiones relacionadas