2011-01-23 73 views
14

Cách dễ nhất để hiển thị cơ sở dữ liệu MySQL bằng cách sử dụng giao diện REST là gì?Hiển thị cơ sở dữ liệu/bảng MySQL bằng cách sử dụng REST

Nguyên tắc duy nhất tôi có thể tìm thấy trên Internet chỉ sử dụng NetBeans. Tôi không phải là một fan hâm mộ lớn của NetBeans ...

Tôi muốn truy xuất dữ liệu đó và có thể cập nhật dữ liệu trên cơ sở dữ liệu bằng giao diện REST này.

FYI, đây là ứng dụng dành cho iPhone mà tôi hiện đang làm việc.

+0

Ngôn ngữ lập trình phụ trợ nào bạn có quyền truy cập/trải nghiệm? –

+0

Tôi muốn một cái gì đó để làm với Java hoặc PHP – aherlambang

Trả lời

4

Như nhận xét dorkitude, nó phụ thuộc vào ngôn ngữ bạn có thể sử dụng/muốn sử dụng.

Tôi đã tìm thấy dự án PHPRESTSQL mà dường như làm những gì bạn muốn: http://phprestsql.sourceforge.net/ - chưa thử bản thân mình.

+1

điều này thực sự trông tuyệt vời và dễ dàng để thử! cảm ơn vì đã đề xuất điều này – aherlambang

+1

Điều này thật dễ dàng để chạy, nhưng nó quá đơn giản. Tôi đang cố gắng tìm hiểu cách sử dụng nó với các đường dẫn khác nhau để trả lại toàn bộ bảng hoặc sử dụng truy vấn cho các khóa khác so với ID chính hoặc kết hợp các tham số truy vấn trong đường dẫn hoặc trả về một giá trị duy nhất "drill-down" thông qua bảng/row_id/property_key .... Có lẽ sẽ là một cái gì đó như: http: // localhost/DB/người/gender = nam & updated_since = 2011-02-12 –

+1

Greg, tất cả những điều trên là có thể với/db, xem thêm tại http://slashdb.com Nó có một API REST tự động và nó cho phép xác định các truy vấn SQL tùy ý để chạy qua REST API. Không quốc tịch và rất yên tĩnh. –

0

Chỉ với các yêu cầu GET, DBSlayer có vẻ đầy hứa hẹn. Đây là một số google one cũng có vẻ thú vị. Tôi đã không sử dụng nó mặc dù/

5

NetBeans chỉ là một IDE. Nó không liên quan gì đến REST. Nếu bạn đang sử dụng Java, hãy xem Restlet hoặc Jersey. Cá nhân tôi thích Jersey, nhưng cả hai đều hoạt động.

+0

Jersey chủ yếu được liên kết với máy chủ Tomcat ... – aherlambang

+0

Không đúng sự thật. Jersey là một triển khai của JAX-RS, và nó không liên quan gì đến các máy chủ ứng dụng. Vì Jersey được thực hiện trong Java, bạn sẽ cần một máy chủ ứng dụng cho phép bạn lưu trữ ứng dụng Java của mình, ví dụ như Tomcat. Đối với thông tin của bạn, tôi có ứng dụng Jersey của tôi đang chạy trong máy chủ Websphere, nếu nó có nghĩa là bất cứ điều gì. – limc

+0

Tôi nghĩ rằng tôi đã nhận được điểm của bạn ... Đầu tiên tôi cần kết nối với cơ sở dữ liệu MySQL bằng trình điều khiển JDBC và sau đó sử dụng khung công tác Restlet để tạo ra dịch vụ web REST. Mã này có thể được đưa vào bất kỳ máy chủ web nào? Không phải là một máy chủ tomcat? – aherlambang

6

Một tùy chọn khác là restSQL, một khung bền vững siêu nhẹ. http://restsql.org. Nó hỗ trợ MySQL và PostgreSQL và chạy trong một thùng chứa Java EE tiêu chuẩn, ví dụ: Apache Tomcat.

restSQL là lớp truy cập dữ liệu rất độc đáo. restSQL không phải là một khung nhìn hướng đối tượng của cơ sở dữ liệu. Nó trình bày các "khung nhìn" phẳng hoặc phân cấp của các bảng cơ sở dữ liệu quan hệ. Các khung nhìn này có thể truy vấn và có thể cập nhật thông qua một HTTP API hoặc API Java dựa trên REST đơn giản. Giao diện HTTP dựa trên nguyên tắc REST, sử dụng các tính năng được tích hợp sẵn của HTTP, thay vì trừu tượng hóa chúng.

+0

restSQL được nhắm mục tiêu vào các ứng dụng OLTP cần truy cập CRUD cho ** truy vấn cơ bản **, ví dụ: Nhóm Theo truy vấn không được hỗ trợ (chưa). – sactiw

2

Nếu một chương trình phụ trợ Java được theo dõi, hãy xem câu trả lời tôi đã đăng cho Need to write a RESTful JSON service in Java để phác thảo các bước bạn có thể thực hiện để kết nối với cơ sở dữ liệu và tạo một Dịch vụ Web RESTful bằng cách sử dụng các bước sau.

  • IDE: Eclipse IDE cho Jave EE Developers (Kepler), đi kèm với Maven xây dựng trong
  • Cơ sở dữ liệu: MySQL (cũng sử dụng MySQL Workbench)
  • Application Server: GlassFish 4,0
  • Java EE 7
    • Jersey cho JAX-RS (thực thi mặc định trong GlassFish) Lớp dịch vụ RESTful.
    • EclipseLink dành cho JPA (triển khai mặc định trong GlassFish) Lớp ổn định.
  • Bất kỳ REST của khách hàng để thử nghiệm: (ví dụ Postman)
-1

Bạn có thể muốn có một cái nhìn tại jongo. Đó là một API REST cho JDBC.

5

MySQL 5.7.4 trở lên làm việc với các plugin HTTP, trong đó cung cấp một API HTTP REST.

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

Tuy nhiên, nó hiện đi kèm với một không phù hợp cho SẢN XUẤT cảnh báo.

Blog announcement.

Docs.

0

Chiming trong tôi tình cờ loopback.io và đã được đùa giỡn với nó. Đó là một công cụ tuyệt vời để dễ dàng tạo điểm kết thúc api cho mysql. Bạn có thể cài đặt một kết nối mysql và sau đó nó phát hiện ra tất cả các bảng mysql của bạn và bạn có thể tạo chúng thành các mô hình. Tôi không thực sự biết nhiều lập trình nhưng nó đủ dễ dàng, nơi tôi có một api cho sql của tôi làm việc trong một ngày. Tôi có 19 bàn và nó dễ dàng tạo ra điểm kết thúc của tôi.

http://loopback.io

0

Trong năm 2017, bạn có thể sử dụng PHP-CRUD-API. Nó là một tập lệnh PHP tập lệnh bổ sung một API REST vào cơ sở dữ liệu InnoDB của MySQL 5.5. PostgreSQL 9.1 và MS SQL Server 2012 cũng được hỗ trợ đầy đủ. Thậm chí còn có sự hỗ trợ giới hạn cho SQLite 3.

Tuyên bố từ chối: Tôi đã viết nó.

2

Tùy chọn khác là Slash db "tự động tạo API REST từ cơ sở dữ liệu quan hệ".

Kể từ tháng 6 năm 2017, nó hoạt động cho cơ sở dữ liệu SQL mà không cần điều chỉnh, nhưng các loại cửa hàng dữ liệu khác yêu cầu plugin được phát triển tùy chỉnh.

Tôi chỉ đọc về dịch vụ này (không phải người dùng). Tôi không có liên kết với họ.

0

Bạn cũng nên xem xét sử dụng dữ liệu Hybrid Connectivity Services của DataDirect cho việc này. Họ có thể giúp bạn nhanh chóng restify your database.Để bắt đầu, bạn tham khảo các trang sản phẩm sau:

  1. REST API (OData) for MySQL Community Edition
  2. REST API (OData) for MySQL Enterprise Edition

Disclaimer: Tôi làm việc cho DataDirect, nhưng xin lưu ý rằng tôi thực sự tin rằng bạn nên nhìn vào những các giải pháp.

Các vấn đề liên quan