0% found this document useful (0 votes)
45 views

21 Android Dan MySQL Database

The document provides code for an Android application that retrieves and displays data from a MySQL database in a list view. It includes the XML layout file with a list view component, Java code to make an asynchronous HTTP request to a PHP web service, parse the JSON response, and populate the list view. It also shows the database structure and sample data to be retrieved.

Uploaded by

elin ayu elin
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
45 views

21 Android Dan MySQL Database

The document provides code for an Android application that retrieves and displays data from a MySQL database in a list view. It includes the XML layout file with a list view component, Java code to make an asynchronous HTTP request to a PHP web service, parse the JSON response, and populate the list view. It also shows the database structure and sample data to be retrieved.

Uploaded by

elin ayu elin
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

Menampilkan data MySQL dengan

Android Studio
Activity_main.xml

<?xml version="1.0" encoding="utf-8"?>


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="10dp"
tools:context=".MainActivity">

<!-- listview to display our stocks -->


<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="10dp"
android:text="Daftar Barang"
android:textAlignment="center"
android:textSize="24sp" />

<ListView
android:id="@+id/listView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true" />

</LinearLayout>

Jangan lupa untuk menambahkan perintah ini di file AndroidManifest.xml

<uses-permission android:name="android.permission.INTERNET" />

MainActivity.java

package com.example.hp.mysqlread;

import android.os.AsyncTask;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

public class MainActivity extends AppCompatActivity {

ListView listView;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

listView = (ListView) findViewById(R.id.listView );


downloadJSON("http://192.168.1.102/android/stock_service.php");
}

private void downloadJSON(final String urlWebService) {

class DownloadJSON extends AsyncTask<Void, Void, String> {

@Override
protected void onPreExecute() {
super.onPreExecute();
}

@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
Toast.makeText(getApplicationContext(), s, Toast.LENGTH_SHORT).show();
try
{ loadIntoListView(s
);
} catch (JSONException e) {
e.printStackTrace();
}
}

@Override
protected String doInBackground(Void... voids) {
try {
URL url = new URL(urlWebService);
HttpURLConnection con = (HttpURLConnection) url.openConnection();
StringBuilder sb = new StringBuilder();
BufferedReader bufferedReader = new BufferedReader(new
InputStreamReader(con.getInputStream()));
String json;
while ((json = bufferedReader.readLine()) != null) {
sb.append(json + "\n");
}
return sb.toString().trim();
} catch (Exception e) {
return null;
}
}
}
DownloadJSON getJSON = new DownloadJSON();
getJSON.execute();
}
private void loadIntoListView(String json) throws JSONException {
JSONArray jsonArray = new JSONArray(json);
String[] stocks = new String[jsonArray.length()];
for (int i = 0; i < jsonArray.length(); i++)
{ JSONObject obj =
jsonArray.getJSONObject(i);
stocks[i] = obj.getString("name") + " " + obj.getString("price");
}
ArrayAdapter<String> arrayAdapter = new
ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, stocks);
listView.setAdapter(arrayAdapter);
}
}

database : android
table : stock_tracker

CREATE TABLE `stock_tracker` (


`id` int(11) NOT NULL,
`name` varchar(50) DEFAULT '',
`price` int(11) DEFAULT '0'
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- Dumping data for table `stock_tracker`

INSERT INTO `stock_tracker` (`id`, `name`, `price`) VALUES


(1001, 'AMPLOP COKLAT BHG/FOLIO', 40980),
(1002, 'AMPLOP COKLAT A3', 91475),
(1003, 'AMPLOP COKLAT BHGA4', 33589),
(1004, 'AMPLOP COKLAT KECIL JAYA/KABINET', 15831),
(1005, 'AMPLOP COKLAT JAYA JAYA/SUPER KAB', 21772),
(1006, 'AMPLOP COKLAT JAYA JAYA/FOLIO', 46486),
(1007, 'AMPLOP COKLAT JAYA JAYA/DOUBLE FOLIO', 59000),
(1008, 'AMPLOP COKLAT JAYA JAYA/KWARTO', 52000),
(1009, 'AMPLOP COKLAT KANCING AIR MAIL/307', 3874),
(1010, 'AMPLOP COKLAT KANCING AIR MAIL/308', 3874),
(1011, 'AMPLOP COKLAT KANCING AIR MAIL/309', 3874),
(1012, 'AMPLOP COKLAT KANCING AIR MAIL/310', 3083),
(1013, 'AMPLOP COKLAT KANCING AIR MAIL/311', 4233),
(1014, 'AMPLOP COKLAT KANCING AIR MAIL/312', 4416),
(1015, 'AMPLOP PUTIH SINAR DUNIA/NO.110', 12516),
(1016, 'AMPLOP PUTIH SINAR DUNIA/NO.104', 14112),
(1017, 'AMPLOP PUTIH JAYA/NO.90', 15006),
(1018, 'BALLPOINT STANDAR AE-7', 13275),
(1019, 'BALLPOINT FASTER C6/606', 30186),
(1020, 'BALLPOINT FASTER HG-C600', 28561),
(1021, 'BALLPOINT PILOT BPTP', 25793),
(1022, 'BALLPOINT STEADLER MEMAKAI SPIRAL', 6264),
(1023, 'BALLPOINT BOXY MATA BALLPOINT', 8580),
(1024, 'BALLPOINT BOXY NO.001 (0.3 MM)', 9080),
(1025, 'BALLPOINT BOXY UB-105(0.3 MM)', 8989),
(1026, 'BALLPOINT FIZZ 0,5 MM',23705),
(1027, 'BALLPOINT SNOWMAN V2 FINE', 26812),
(1028, 'BALLPOINT STEADLER LIQUID POINT 415-9 BLACK', 9500),
(1029, 'BALLPOINT SNOWMAN BP7', 2372),
(1030, 'BALLPOINT FABER CASTTEL ISI 6', 30812),
(1031, 'BALLPOINT BALLINER WARNA BIRU', 159543),
(1032, 'BALLPOINT BALLINER WARNA HITAM', 157969),
(1033, 'BALLPOINT 0.3/0.4 PILOT BL-LH-HITEC', 2824),
(1034, 'BALLPOINT BOXY BOXY NO.1', 9286),
(1035, 'BALLPOINT GEL PILOT 0.5', 61363),
(1036, 'BALLPOINT GEL PILOT 0.7', 90124),
(1037, 'BALLPOINT GEL PILOT G-10 07', 8732),
(1038, 'BALLPOINT PANTEL PANTEL ', 104010),
(1039, 'BALLPOINT PANTEL R-100', 19164),
(1040, 'BALLPOINT PILOT PILOT BF-T-10R', 3973),
(1041, 'BALLPOINT PILOT PILOT BL-G1', 11596),
(1042, 'BALLPOINT PILOT PILOT BL-G2', 9732),
(1043, 'BALLPOINT PILOT PILOT BPRK-10 R', 12654),
(1044, 'BALLPOINT PILOT PILOT BX-V5 HI-TEC', 2890),
(1045, 'BALLPOINT PILOT PILOT BLGP-G1 GRIP', 4132),
(1046, 'BALLPOINT PILOT SUPER PILOT BP-10 RK', 4132),
(1047, 'BALLPOINT PILOT SUPER GEL PILOT BL-SG-7B', 4132),
(1048, 'BALLPOINT PILOT SUPER GRIP PILOT BPGP-10 R', 4132),
(1049, 'BALLPOINT REFILL PILOT', 3116),
(1050, 'BALLPOINT SNOWMAN SNOWMAN V-1', 2186),
(1051, 'BALLPOINT SNOWMAN SNOWMAN V-2', 2458),
(1052, 'BALLPOINTSNOWMAN SNOWMAN BP-7', 2809),
(1053, 'BALLPOINT STANDARD STANDARD FIZZ HIGH GRIP', 2349),
(1054, 'BALLPOINT STANDARD STANDARD AE-7 OPAQUE', 1674),
(1055, 'BALPOINT STANDARD STANDARD B\'GEL 0.5/0.7', 5228);

You might also like