Dalam Tutorial ini anda akan belajar mengenai bagaimana cara untuk membuat struktur database dengan Mysql, bagaimana membangung web service dengan PHP, serta bagaimana cara membuat aplikasi android dengan android studio, dan bagaimana menyimpan data ke database mysql dengan perantara web service yang dibuat dengan PHP.
Untuk detail List Tutorialnya adalah sebagai berikut :
MATERI :
VIDEO TUTORIAL 1
- Instalasi Xampp - Instalasi Notepad++
VIDEO TUTORIAL 2
- Membuat
Database menggunakan Mysql - Membuat Tabel - Latihan Query CRUD
VIDEO TUTORIAL 3
- Latihan Dasar-Dasar PHP - Pengenalan GET, POST dan OUTPUT JSON
VIDEO TUTORIAL 4
- Membuat PHP (Webservice) Insert Data dari PHP Ke Mysql
VIDEO TUTORIAL 5
- Membuat Webservice untuk Read Data DENGAN OUTPUT JSON
VIDEO TUTORIAL 6
- Membuat Webservice untuk Update, Delete
VIDEO TUTORIAL 7
- Membuat Webservice untuk Filter Data
VIDEO TUTORIAL 8
- Membuat Insert
Data dari Android Studio Ke Database Mysql
VIDEO TUTORIAL 9
- Menampilkan Data dari Mysql Ke Android : Pengeluaran, Pemasukan, Saldo Dan Semua Transaksi
VIDEO TUTORIAL 10
- Membuat Update dan Delete Data dari Android Studio ke Database Mysql
VIDEO TUTORIAL 11
- Filter Data dari Android Ke Mysql menggunakan Activity
VIDEO TUTORIAL 12
- Filter Data dari Android Ke Mysql Menggunakan DateRangePicker
VIDEO TUTORIAL 13
- Menghilangan FindViewById
Menggunakan Butterknife
VIDEO TUTORIAL 14
- Pengenalan dan Implementasi Tab Fragment
VIDEO TUTORIAL 15
- Menggunakan Intro ImageSlider pada Aplikasi Android
[ INCLUDE ]
Source Code Project
Modul Pdf Instalasi Xampp dan Notepad++
Software Pendukung
| 17/05/2015 | Basic4Android | Dalam Basic4Android (B4A) ada banyak cara untuk menghubungkan App Client (Android) ke Remote Database Server seperti: MySQL, SQL Server, Oracle, Sybase, DB2, postgreSQL, Firebird dan lainnya. Salah satu caranya yaitu dengan bantuan Remote Database Connector (RDC). Apa itu RDC? Yaitu sebuah middleware berupa Java web server yang memungkinkan kita dengan mudah untuk menghubungkan aplikasi android ke berbagai Remote Database Server. Jadi, dengan adanya RDC ini kita
tidak perlu repot-repot membuat Web Server sendiri dengan PHP atau sejenisnya. Oke, dalam postingan kali ini saya ingin share bagaimana caranya menghubungkan aplikasi android ke database MySQL. Perlu diketahui dalam tutorial kali ini, saya menggunakan OS Windows 8.1 dan server MySQL menggunakan XAMPP. Sebelum melangkah lebih jauh, terlebih dahulu buat database MySQL-nya, dengan nama (misal): delheru-penjualan. Lalu buatlah satu tabel
dengan nama: barang. Dengan field-field sebagai berikut: Jika database MySQL sudah dibuat, maka
insert-lah beberapa data. Misalnya seperti ini:
Lalu perhatikan langkah-langkah berikut ini…
- Pastikan Windows-nya sudah terinstal Java.
- Silakan download RDC Server-nya di sini. Kemudian ekstrak ke mana saja boleh.
- Buka config.properties. Lalu sesuaikan config database-nya, seperti JdbcUrl, User, Password. Untuk lainnya (sementara) abaikan saja.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #Lines starting with '#' are comments. #Backslash character at the end of line means that the command continues in the next line. DriverClass=com.mysql.jdbc.Driver JdbcUrl=jdbc:mysql://localhost/delheru-penjualan?characterEncoding=utf8 #SQL Server #DriverClass=net.sourceforge.jtds.jdbc.Driver #JdbcUrl=jdbc:jtds:sqlserver://<database server ip>/<database> User=root Password=1234 ServerPort=17178 #If Debug is true then this file will be reloaded on every query. #This is useful if you need to modify the queries. Debug=true #commands sql.select_barang=SELECT*FROM barang |
- Kemudian buka RunRLC.bat dengan text editor seperti Notepad++ atau Sublime Text. Sesuaikan path direktori java.exe pada Windows Anda.
- Untuk mengaktifkan atau menjalankan RDC-nya, klik dua kali pada RunRLC.bat. Maka, akan muncul seperti gambar di bawah ini:
- Untuk memastikan lagi apakah RDC sudah running atau belum, bisa dicek dengan cara membuka: //localhost:17178/?method=test di browser. Ganti localhost dengan IP Anda. Jika sudah running, maka akan muncul tulisan seperti pada gambar berikut:
- Oke, sekarang buat project baru, lalu save dengan nama: MyConnectDB.
- Lalu import Class Table dan DBRequestManager.
Cara import Class bisa lihat postingan ini.
- Buka Class Table. Kemudian tambahkan code berikut ini:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | 'load data from a RDC Request 'Result = DBResult object got from a RDC request 'AutomaticWidths True > set the column widths automaticaly 'Written by LucasMs PublicSubLoadRDCResult(Result AsDBResult,AutomaticWidths As Boolean) cAutomaticWidths=AutomaticWidths NumberOfColumns=Result.Columns.Size innerClearAll(NumberOfColumns) Dim Headers(NumberOfColumns)AsString DimColumnWidths(NumberOfColumns)AsInt DimHeaderWidths(NumberOfColumns) AsInt DimDataWidths(NumberOfColumns)AsInt Dimcol,row AsInt Dimstr AsString For col=0To NumberOfColumns-1 Headers(col)=Result.Columns.GetKeyAt(col) If AutomaticWidths=FalseThen ColumnWidths(col)=130dip HeaderWidths(col)=130dip DataWidths(col) =130dip Else HeaderWidths(col)=cvs.MeasureStringWidth(Headers(col), Typeface.DEFAULT,cTextSize)+8dip+cLineWidth DataWidths(col)=0 Dim FieldValue AsObject For row=0To Result.Rows.Size-1 Dim Record()AsObject=Result.Rows.Get(row) FieldValue=Record(col) If FieldValue<> Null Then FieldValue=FieldValue Else FieldValue="" EndIf If GetType(FieldValue) ="java.lang.String"Then DataWidths(col)=Max(DataWidths(col),cvs.MeasureStringWidth(str,Typeface.DEFAULT,cTextSize)+ 150dip+cLineWidth) Else DataWidths(col)=Max(DataWidths(col),cvs.MeasureStringWidth(str,Typeface.DEFAULT, cTextSize)+50dip+cLineWidth) EndIf Next ColumnWidths(col) =Max(HeaderWidths(col),DataWidths(col)) EndIf Next SetHeader(Headers) SetColumnsWidths(ColumnWidths) For Each Record()AsObject In Result.Rows DimR(NumberOfColumns)AsString Dim FieldV AsString For col=0To NumberOfColumns-1 FieldV=Record(col) R(col) =FieldV Next AddRow(R) Next EndSub |
- Beralih ke Activity Main. Pada Sub Process_Globals dan Sub Globals deklarasikan object-object seperti di bawah ini:
SubProcess_Globals 'These global variables will be declared once when the application starts. 'These variables can be accessed from all modules. DimreqManager AsDBRequestManager 'Sesuaikan alamat IP Server RDC-nya Dim RDCServer AsString="//192.168.0.100:17178" EndSub SubGlobals 'These global variables will be redeclared each time the activity is created. 'These variables can only be accessed from this module. DimTable1 AsTable DimPnlTable AsPanel EndSub |
- Pada event Activity_Create masukkan code berikut:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | SubActivity_Create(FirstTime AsBoolean) 'Do not forget to load the layout file created with the visual designer. For example: 'Set judul untuk activity ini. Activity.Title="List Barang" 'Tambahkan menu. Activity.AddMenuItem("Sync data Barang","SyncBarang") 'Initialize Panel. PnlTable.Initialize("") 'Tampilkan Panel di activity ini. Activity.AddView(PnlTable,0,0,100%x,100%y) 'Initialize Table. Table1.Initialize(Me,"Table1",4, Gravity.CENTER_HORIZONTAL,True) Table1.CellAlignment=Bit.OR(Gravity.LEFT,Gravity.CENTER_VERTICAL) Table1.HeaderColor=Colors.Blue Table1.HeaderTextColor=Colors.Yellow Table1.TextColor=Colors.Blue Table1.TableColor=Colors.Red Table1.AddToActivity(PnlTable,0, 0,PnlTable.Width,PnlTable.Height) If FirstTime Then 'Initialize RDC-nya. reqManager.Initialize(Me,RDCServer) EndIf End Sub |
- Buat fungsi baru dengan nama GetDataBarang.
SubGetDataBarang Dimcmd AsDBCommand cmd.Initialize cmd.Name="select_barang" reqManager.ExecuteQuery(cmd, 0,"select_barang") EndSub |
- Kemudian buat event Click untuk object menu SyncBarang seperti code di bawah ini:
SubSyncBarang_Click() ProgressDialogShow2("Loading data from server. Please wait...",False) GetDataBarang EndSub |
- Setelah itu buat event JobDone. JobDone ini akan berjalan ketika proses komunikasi antara App Client (Android) dengan Web Server selesai.
SubJobDone(Job AsHttpJob) If Job.Success=FalseThen Log("Error: "&Job.ErrorMessage) ProgressDialogHide Else If Job.JobName="DBRequest"Then Dimresult AsDBResult=reqManager.HandleJob(Job) 'Tampilkan data ke dalam bentuk Table. Table1.LoadRDCResult(result,True) ProgressDialogHide EndIf EndIf Job.Release EndSub |
- Save, kemudian Run/Compile project ini dalam versi Release.
- Lalu lihat, apa yang terjadi…
Jika datanya ingin ditampilkan ke dalam ListView, silakan lihat postingan ini:
Cara Menampilkan Data MySQL ke Dalam ListView
Oke, demikian cara menghubungkan aplikasi android ke database MySQL menggunakan RDC. Semoga bermanfaat. Dan tetap nantikan juga tutorial-tutorial menarik lainnya seputar Basic4Android. Happy Coding! 🙂
Silakan download source code lengkapnya di sini.
About The Author
Chairruddin ArrasidOrang yang suka belajar, juga suka membaca, juga suka menulis, dan juga suka makan kalau lapar. Dulu waktu kecil tidak punya cita-cita jadi programmer, tapi sekarang jadi programmer. Lah? Mungkin dulu masih belum tahu bahwa programming itu menyenangkan.