Android database mysql dan webservice
kelompok 5 Nama Anggota : Moh.Solahudin (15.11.0123) Irkham Mustofa (15.11.0129) Achmal Maulana (15.11.0128) Dimas Wahyu Rabbani (15.11.0134) Yovie Fesya (15.11.0135) Harni Windiarti (15.11.0137) Tri Huda Prasetya (15.11.0144)
MYSQL MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL, atau DBMS yang multithread dan multi-user. Bahasa pemrograman untuk dapat mengakses basis data MySQL antara lain: bahasa pemrograman C, C++, C#, bahasa pemrograman Eiffel, bahasa pemrograman Smalltalk, bahasa pemrograman Java, bahasa pemrograman Lisp, Perl, PHP, bahasa pemrograman Python, Ruby, REALbasic dan Tcl.
Kelebihan Mysql Berlisensi GPL dan Multi Platform sehingga lebih disukai para mahasiswa karena tidak membutuhkan biaya besar dalam membuat aplikasi serta tidak harus tergantung pada OS Windows ataupun Linux karena dapat dijalankan pada kedua OS tersebut dan beberapa OS lainnya. Dapat diintegrasikan dengan beberapa bahasa Pemrograman seperti .Net, Java, Python, Perl yang merupakan bahasa pemrograman yang paling dominan di kalangan programmer. Mendukung ODBC untuk sistem operasi Windows sehingga bisa digunakan aplikasi yang berjalan diwindows. Bisa dijalankan pada spesifikasi hardware yang rendah karena lebih hemat resource memory (dibandingkan database lain) sehingga mudah digunakan untuk bahan pembelajaran. MySQL dapat mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari 20 bahasa meskipun bahasa indonesia belum termasuk didalamnya.
Kekurangan mysql Banyak mengklaim kurang support terhadap pemrograman Visual/Desktop, sehingga sedikit yang menggunakan untuk aplikasi visual. Karena berlisensi GPL sehingga sulit mendapatkan update untuk problem yang urgent, sehingga perusahaan skala menengah keatas lebih memilih RDBMS berlisensi dan disupport seperti Oracle dan MS SQL Server Sangat diragukan dalam menangani data skala besar, karena ada beberapa opini yang pro dan kontra terhadap kemampuan MySQL terhadap pengolahan data yang besar. https://upyes.wordpress.com/2013/02/06/pengertian-dan-sejarah-mysql/
Agar memudahkan dalam memahami pembuatan aplikasi ini kita akan membuatnya dengan sangat sederhana tanpa harus merubah atau membuat tampilan yang begitu rumit. Kita akan membuat dengan tampilan sederhana agar kalian terfokus pada inti dari aplikasi ini. Untuk pembuatan aplikasi CRUD ini kita akan membagi pekerjaan menjadi 3 bagian, antara lain yaitu: Pembuatan database pada MySQL. Pembuatan File PHP. Pembuatan Project Android.
1. Database Mysql Database adalah sebuah system yang dibuat untuk mengorganisasi, menyimpan dan menarik data dengan mudah. Database terdiri dari kumpulan data yang terorganisir untuk 1 atau lebih penggunaan dalam bentuk digital. Database digital di manage menggunakan Database Management System (DBMS) yang menyimpan isi database, mengizinkan pembuatan dan maintenance data dan pencarian dan akses yang lain.
Database MySQL setidaknya harus memiliki sedikit pemahaman pemrograman PHP dan memahami konsep dari database, terutamanya MySQL. Bukan sebuah pekerjaan yang mudah untuk memahami konsep komunikasi data antara aplikasi dengan database ini, terutama database MySQL dimana database itu sendiri terletak di Server bukan di perangkat Android itu sendiri. Agar memudahkan dalam memahami pembuatan aplikasi ini kita akan membuatnya dengan sangat sederhana tanpa harus merubah atau membuat tampilan yang begitu rumit. Kita akan membuat dengan tampilan sederhana agar kalian terfokus pada inti dari aplikasi ini. Untuk pembuatan aplikasi CRUD ini kita akan membagi pekerjaan menjadi 3 bagian, antara lain yaitu: Pembuatan database pada MySQL. Pembuatan File PHP. Pembuatan Project Android.
Pembuatan Database MySQL Pada tahap ini kalian sangat perlu memperhatikan penamaan dari database, table, dan field yang kalian bangun. Sebelumnya jika kalian belum memahami konsep MySQL alangkah lebih baiknya jika mempelajarinya terlebih dahulu. Tidak harus memiliki kemampuan yang expert dalam hal MySQL, kalian hanya perlu memahami bagaiman cara membuat database, table, dan fieldnya. Serta sedikit memahami perintah SQL. Jika kalian telah memahami bagaimana membuat database di MySQL silahkan membuat database dengan nama db_android dengan nama table tb_pegawai dan struktur tablenya sendiri seperti berikut:
Pembuatan File PHP Pembuatan file PHP disini digunakan sebagai web service untuk parsing data aplikasi Android. Pada tahap pembuatan File PHP ini, ada beberapa File yang harus kita buat, berikut ini file php yang perlu kalian buat: Pertama kita perlu untuk membuat koneksi dengan database, oleh sebab itu kita buat file php dengan nama koneksi.php dan tulis programnya seperti di bawah ini:
tambahPgw.php tampilSemuaPgw.php
tampilPgw.php (lebih detail) updatePgw.php
hapusPgw.php Untuk mengakses di Android sendiri kita perlu mengetahui IP dari Komputer kita, agar kita bisa mengetahui berapa IP komputer kita mungkin kita bisa gunakan perintah di CMD dengan perint ipconfig maka akan tampil berapa IP kita seperti contoh berikut ini: Pada contoh di atas IP yang tertera adalah 192.168.1.9 maka path untuk script kita nanti di Android Studio adalah http://192.168.1.9/Android/pegawai/nama_file.php
Pembuatan Project Pada Android Studio Pada pekerjaan ini merupakan pekerjaan intinya, karena memang kita membuat aplikasi Android . Jika project baru telah terbuka maka langkah pertama yang perlu kalian lakukan yaitu silahkan buka File Manifest dan tambah kan perintah berikut: <uses”permission android:name=“android.permission.INTERNET” /> Perintah di atas digunakan untuk ijin internet meskipun project yang akan kita buat nanti adalah bersifat Local tetap perlu untuk menambahkan perintah tersebut.
Sekarang silahkan buat Java Class baru di dalam package yang ada dengan nama konfigurasi. Dan kalian ikuti kode programnya sebagai berikut: Sebagai catatan jangan lupa perhatikan bagian URL (Pemanggilan file PHP yang ada di Server) Sesuaikan Dengan IP masing-masing
Setelah selesai membuat java class konfigurasi, selanjutnya silahkan buat java class kembali dengan nama RequestHandler. Java Class ini kita gunakan untuk menangani permintaan jaringan. Silahkan ikuti kode program untuk java class RequestHandler seperti di bawah ini:
Selanjutnya mari kita rubah tampilan dari activity_main Selanjutnya mari kita rubah tampilan dari activity_main.xml yang telah terbentuk sejak project pertama kali dibangun. Pada file xml ini kita akan gunakan sebagai tampilan menambah data pegawai (ADD). selain xml ini kita nantinya akan membuat tampilan lain atau file xml lainnya untuk menampilkan data semua pegawai dan untuk menampilkan data dari pegawai yang di pilih/select. Untuk file xml activity_main.xml sehingga menghasilkan seperti tampilan berikut :
Selanjutnya silahkan ikuti kode program untuk MainActivity Selanjutnya silahkan ikuti kode program untuk MainActivity.java seperti berikut ini:
Dari kode program tadi akan menghasilkan tampilan berikut
Web service Web service adalah aplikasi sekumpulan data (database), perangkat lunak (software) atau bagian dari perangkat lunak yang dapat diakses secara remote oleh berbagai piranti dengan sebuah perantara tertentu. Secara umum,web service dapat diidentifikasikan dengan menggunakan URL seperti hanya web pada umumnya. Namun yang membedakan web service dengan web pada umumnya adalah interaksi yang diberikan oleh web service. Berbeda dengan URL web pada umumnya, URL web service hanya menggandung kumpulan informasi, perintah, konfigurasi atau sintaks yang berguna membangun sebuah fungsi-fungsi tertentu dari aplikasi. http://www.ketutrare.com/2013/05/web-service-dan-kegunaanya-pada-sistem.html
Web service sendiri dibentuk dari : Service provider, merupakan pemilik Web Service yang berfungsi menyediakan kumpulan operasi dari Web Service. Service requestor, merupakan aplikasi yang bertindak sebagai klien dari Web Service yang mencari dan memulai interaksi terhadap layanan yang disediakan. Service registry, merupakan tempat dimana Service provider mempublikasikan layanannya. Pada arsitektur Web Service, Service registry bersifat optional. Teknologi web service memungkinkan kita dapat menghubungkan berbagai jenis software yang memiliki platform dan sistem operasi yang berbeda.
Web service dibangun di atas beberapa teknologi web seperti XML, SOAP, WSDL, dan UDDI. XML (Ekstensible Markup Language) digunakan untuk sumber daya data yang memiliki interoperabilitas tinggi (dapat diakses dan didukung oleh berbagai aplikasi dan teknologi). SOAP (Simple Object Access Protocol), protokol ringan untuk XML sehingga dapat digunakan untuk menganalisa informasi dari request dan response pada Web service sebelum dikirimkan melalui jaringan. WSDL (Web Services Description Language), sebuah bahasa berbentuk XML yang digunakan untuk mendeskripsikan kemampuan dari Web service sebagai kumpulan dari komunikasi-komunikasi yang saling bertransaksi pesan. UDDI (Universal Description, Discovery, and Integration), sebuah direktori yang didistribusikan secara web based sehingga dapat mendaftarkan diri ke Internet sehingga dapat dijelajahi. Secara singkat dapat dijelaskan jika, XML untuk layanan data, SOAP untuk men-transfer data, WSDL untuk menggambarkan services yang tersedia, dan UDDI untuk mendaftar services apa saja yang tersedia.
arsitektur web service Web service memiliki tiga entitas dalam arsitekturnya, yaitu: 1. Service Requester (peminta layanan) 2. Service Provider (penyedia layanan) 3. Service Registry (daftar layanan) Service Requestor: Peminta layanan yang mencari dan menemukan layanan yangdibutuh kan serta menggunakan layanan tersebut. operasi-operasi web service. 2. Service Provider: Berfungsi untuk menyediakan layanan/service dan mengolah sebuahre gistry agar layanan-layanan tersebut dapat tersedia. Service Registry: Berfungsi sebagai lokasi central yang mendeskripsikan semualayanan/service yang telah di-register. http://daftarkul.blogspot.co.id/2013/06/web-services-merupakan-istilah-yang.html
CONTOH IMPLEMENTASI ANDROID DATABASE MYSQL MENGGUNAKAN WEB SERVICE
Implementasi Program Pada tutorial tahap ini kita akan membuat panggilan Web Service, untuk itu kita akan menggunakan URL http://aplikasi- mobile.com/id/dummy/json, di mana URL ini akan menyediakan Web Service dengan format JSON, yang berisikan macam-macam Klub Sepakbola di English Premier League. Lakukanlah navigasi ke http://aplikasi- mobile.com/id/dummy/json untuk melihat data yang ada. Untuk lebih jelas dalam melihat JSON data, cobalah navigasi ke https://jsonformatter.curiousconcept.com/ dan paste URL http://aplikasi- mobile.com/id/dummy/json ke dalam box di tengah, dan klik Process.
Untuk pertama kalinya dalam tutorial ini kita akan menggunakan library dari luar. Untuk itu lakukanlah navigasi ke Gradle Scripts > build.gradle (Module : app), double-click saja, dan tambahkan line berikut ke dalam bagian dependencies :
Sehingga akan jadi seperti ini
Tambahkan kode ini pada onCreate untuk menginisiasi ProgressDialog : Lengkapnya..
Terakhir tambahkan fungsi pada MainActivity
Sekarang tambahkan : query_data(); ... pada metode onCreate. Ini dikarenakan dalam mengakses Web Service anda membutuhkan koneksi Internet, dan anda harus menambakan permission pada AndroidManifest anda. Copy kode di bawah ini dan tambahkan ke dalam tag manifest pada AndroidManifest.xml anda. <uses-permission android:name="android.permission.INTERNET"/>
Coba run Pada permulaan aplikasi anda, akan muncul ProgressDialog dengan tulisan "Sedang Mencari Klub". Perhatikan pada logcat yang muncul di belakang emulator pada gambar. Setelah ProgressDialog selesai, akan muncul tulisan data dari JSON yang kita panggil tadi. Dapat di lihat pada screenshot di bawah di bagian yang bewarna biru.
SEKIAN