Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Akses database GWT tanpa RPC

Ada 2,5 alasan Anda tidak dapat menggunakan gwt untuk mengakses MySQL secara langsung.

Alasan #1.GWT dikompilasi ke dalam Javascript. Anda perlu membuka soket ke server database. GWT tidak mengizinkan Anda untuk membuka soket. Faktanya, tidak ada browser yang tidak ditambah (sebelum munculnya html5) yang dapat membuka soket. Tetapi Anda dapat membuka soket menggunakan skrip tindakan Flash, atau javascript HTML 5.

Alasan #2.OK, katakanlah Anda menggunakan soket HTML5. Dan Anda menghabiskan 6 bulan menulis dalam Javascript sebuah konektivitas JDBC. Namun, soket web Anda masih perlu mengalamatkan servlet di server yang akan membantu soket web Anda membuat koneksi yang persisten - dan mysql tidak dapat melakukan pembentukan seperti itu.

Alasan #3.SLD - Pembatasan SOP:(Kebijakan Asal Sama Domain Tingkat Kedua) Browser standar membatasi halamannya hanya untuk dapat meminta, dan menyertakan, konten dari dalam domain tingkat kedua (SLD) yang sama dengan server yang memberikan halaman itu ke browser. Domain tingkat atas (dan setengah tingkat teratas) seperti .com, .org, .net, .me.us, atau .co.uk. Jadi, nama domain seperti google.com, fbi.gov, mit.edu adalah domain tingkat kedua. Sementara, mail.google.com akan menjadi domain tingkat ketiga. Oleh karena itu, GWT hanya akan bekerja dalam batas-batas SLD. Server web Anda juga harus dapat diakses pada SLD yang sama dengan server mysql Anda.

SLD-SOP dan persyaratan tunneling adalah untuk menutup lubang keamanan yang memungkinkan setiap tom-rick-or-mary untuk masuk ke sistem Anda melalui browser Anda. Tunneling selalu diperlukan untuk browser untuk terhubung ke server selain server http. Tunneling adalah saat browser mengeksploitasi server web sebagai yenta (bahasa Yiddish untuk busy-body/go-between/match-maker) untuk sampai ke server lain.

Anda tidak punya pilihan selain menggunakan GWT-RPC. Mungkin Anda tidak ingin menggunakan RPC, maka Anda bisa menggunakan RequestBuilder, atau Script-Include atau RequestFactory. Tapi mereka semua masih beragam sarana tunneling. http://h2g2java.blessedgeek.com /2011/06/gwt-requestbuilder-vs-rpc-vs-script.html .

Ada satu alasan mengapa Anda dapat terhubung ke server database Anda dari klien gwt Anda:Server database Anda harus menjalankan mesin koneksi httpd. Artinya, aplikasi gwt Anda akan mengakses server db melalui http. Saya tidak tahu database relasional mana yang memiliki akses http. Kemungkinan besar, Anda harus menanyakan melalui xml atau json.

Namun, perusahaan tempat saya bekerja membuat layanan http kami sendiri untuk memungkinkan akses klien "langsung". "langsung" adalah keliru karena kami menggunakan kucing jantan. Itu masih terowongan. Setiap perusahaan basis data yang menawarkan akses http "langsung" masih melakukan tunneling. Terowongan - tidak ada jalan keluar darinya.

Anda dapat menambah browser dengan Flash dan menulis aplikasi Flash daripada menggunakan GWT. Jika akses langsung sangat penting bagi Anda, Anda harus meninggalkan GWT dan mengembangkan di Flash dan menjalankan mesin httpd untuk server database Anda.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Yii2 dan menyimpan data dalam database sebagai UTC

  2. MacOSX:autostart mysql saat boot

  3. Dapatkan baris terakhir PER Grup

  4. Cara Memperbarui Tampilan di MySQL

  5. Bisakah Anda membantu mengubah kueri atau kueri lain untuk mendapatkan hasil yang diharapkan?