t Modul 11 J2ME
description
Transcript of t Modul 11 J2ME
![Page 1: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/1.jpg)
J2ME GUI dan Interkoneksi Client Server
Muhammad Zen S Hadi ST MScMuhammad Zen S. Hadi, ST. MSc.
![Page 2: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/2.jpg)
Arsitektur Jaringan dgn J2ME
2
![Page 3: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/3.jpg)
Introduction J2ME menyediakan fitur jaringan ke perangkat
mobilemobile Sehingga memungkinkan untuk selalu update
perubahan mata uang misalnya. Class dan interface pada javax.microedition.io
menangani kemampuan jaringan pada MIDP Paket java io menyediakan kemampuan input/output Paket java.io menyediakan kemampuan input/output
(I/O) pada MIDP.
3
![Page 4: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/4.jpg)
Kategori J2ME Networking J2ME networking mempunyai 3 kategori:
– Low-level IP networkingg– HTTP networking– Secure networking g
Aspek yang paling krusial dalam konektifitas jaringanJ2ME adalah komunikasi antara perangkat mobile dengan web serverdengan web server.
4
![Page 5: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/5.jpg)
Low-level IP networking Kategori ini meliputi socket, datagram, serial port dan
komunikasi file I/O. Socket-based communication berbasis pada
connection-oriented TCP/IP protocol. Datagram based communication berbasis pada Datagram-based communication berbasis pada
connectionless UDP/IP protocol. Misal URI untuk koneksi datagram dalam pengiriman g p g
data ke server pada port tertentu :– datagram://123.456.789.12:1234
Low-level IP networking dapat juga menangani file I/O dan mengijinkan MIDlet menggunakan serial port lokal.
5
![Page 6: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/6.jpg)
HTTP networking Komunikasi antara perangkat mobile dan web server
berbasis pada protokol HTTP (Hypertext Transfer Protocol)Protocol).
HTTP adalah protokol connection-oriented request-response.p
6
![Page 7: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/7.jpg)
Secure networking Secure Networking dalam J2ME menambahkan
interface untuk secure communication dengan Web-based network services.
Secure interfaces disediakan oleh HTTPS dan SSL/TLS protocol melewati IP networkSSL/TLS protocol melewati IP network.
7
![Page 8: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/8.jpg)
Framework Connection J2ME networking didesain untuk digunakan
keperluan yang beraneka ragam pada perangkatbilmobile.
Disisi lain, sistem jaringan harus memiliki perangkatyang spesifik.yang spesifik.
Untuk mempertemukan hal tsb, dikenalkan konsepgeneric connection framework.
Generic connection framework didefinisikan sebagaiaspek umum dari jaringan dan file I/O dalam bentukinterface Java untuk keperluan yang luas darie ace Ja a u u epe ua ya g uas daperangkat mobile.
8
![Page 9: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/9.jpg)
The Connection Framework
9
![Page 10: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/10.jpg)
Penanganan URL dalam J2ME Penanganan URL dalam J2ME meliputi open koneksi
ke web server dari perangkat mobile dand t I/O di t k dpenanganan data I/O diantara keduanya.
Proses yang terjadi meliputi tahapan berikut :S t– Setup
– ConnectedC– Closed
J2ME mendefinisikan javax.microedition.io.Connectorclass untuk membuat semua obyek koneksiclass untuk membuat semua obyek koneksi.
Dalam penanganan URL, Connector.open()digunakan untuk membuka URL, yang akan
10
g y gmemberikan obyek HttpConnection.
![Page 11: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/11.jpg)
Penanganan URL dalam J2ME Parameter string ke method Connector.open()
method adalah URL. Nil i d i t i URL b b h b h t t d i Nilai dari string URL berubah-ubah tergantung dari protokol komunikasi, sebagai contohnya :
Contoh 1. HTTP-based communicationConnection conn =
Connector.open("http://www.yahoo.com");
Contoh 2. Stream-based socket communicationConnection conn =
Connector.open("socket://localhost:9000");Connector.open( socket://localhost:9000 );
11
![Page 12: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/12.jpg)
Penanganan URL dalam J2MEContoh 3. Datagram-based socket communicationConnection conn =Connection conn =
Connector.open("datagram://:9000");
Contoh 4 Serial port communicationContoh 4. Serial port communicationConnection conn =
Connector.open("comm:0;baudrate=9000");
Contoh 5. File I/O communicationConnection conn =
C t ("fil // fil d t")Connector.open("file://myfile.dat");
12
![Page 13: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/13.jpg)
Penanganan URL dalam J2ME Metode Connector.open() juga tersedia mode akses
(nilai READ, WRITE, dan READ_WRITE), dan sebuah flag untuk memberi alert ke pemanggilsebuah flag untuk memberi alert ke pemanggil sebuah notifikasi timeout. – static Connection open(String name, int mode)p ( g , )
– static Connection open(String name, int mode, boolean timeouts)boolean timeouts)
Metode openInputStream() dari Connector membuka p p ()input stream dari bytes (java.io.InputStream).
13
![Page 14: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/14.jpg)
Penanganan URL dalam J2ME java.io.OutputStream menyatakan sebuah output
stream of bytes. Bagian dari InputStream dan OutputStream adalah
java.io.DataInputStream dan java.io.DataOutputStream, secara berurutan. j p ,
DataInputStream/DataOutputStream berhubungan dengan aplikasi read/write primitive Java data types.
14
![Page 15: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/15.jpg)
Akses file text dari Server
server
15
Simpan file text dihttp://127.0.0.1/pesan1.txt
![Page 16: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/16.jpg)
Menghilangkan tampilan AirTimePilih File > “active project” Properties
16
![Page 17: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/17.jpg)
Aplikasi akses file text dari Server
17
![Page 18: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/18.jpg)
Aplikasi akses file text dari Server
18
![Page 19: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/19.jpg)
Akses file php dari Server
server
19
Simpan file php di http://127.0.0.1/lat1.php
![Page 20: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/20.jpg)
Aplikasi akses file php dari Server Semua bagian sama seperti program sebelumnya
20
![Page 21: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/21.jpg)
Passing Parameters ke Server Ketika HTTP request ke server, maka server akan
memproses informasi yang diperlukan oleh request tsbtsb.
21
![Page 22: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/22.jpg)
Passing Parameters ke Server Misal permasalahan Login. User harus mengotentikasi client menggunakan user g gg
ID dan password. Client mengirim user ID dan password pada HTTP
requestrequest. 2 teknik yang digunakan untuk mengirim data ke
server: metode GET atau POST request q Metode GET data akan ditambahkan pada URL di
server. Metode POST, masing-masing nilai dituliskan ke
output stream.
22
![Page 23: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/23.jpg)
Passing Parameters ke Server Data dikirim ke server harus dalam pasangan set nilai:
– field nameNilai yang berhubungan dgn field tsb– Nilai yang berhubungan dgn field tsb.
Field name dan nilai harus dipisahkan oleh tanda sama dengan (=)
Pasangan nilai dipisahkan dari URL dengan tanda tanya (?)
Masing-masing nilai dipisahkan dari nilai yang lainnya Masing masing nilai dipisahkan dari nilai yang lainnya dengan ampersang (&).
Karakter spasi diubah dengan tanda plus (+) Contoh: request berikut mengirim 2 parameter:
pOne="one bit“ dan pTwo="two"
http://127 0 0 1/simple php?p=one+bit&pTwo=two
23
http://127.0.0.1/simple.php?p=one+bit&pTwo=two
![Page 24: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/24.jpg)
Akses file php dgn parameter
server
24
Simpan file php di http://127.0.0.1/lat2.php
![Page 25: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/25.jpg)
Aplikasi Akses File php dgn parameter
25
![Page 26: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/26.jpg)
Akses file php dgn parameter (2)
server
26
Simpan file php di http://127.0.0.1/modu13/lat3.php
![Page 27: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/27.jpg)
Aplikasi Akses File php dgn parameter (2)
27
![Page 28: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/28.jpg)
Interaksi dengan Database (Review) Dalam pembuatan aplikasi berbasis Database –Dalam pembuatan aplikasi berbasis Database
J2ME, beberapa perintah di Database baik DML dan DDL bisa digunakan dikarenakan aksesnya masih berbasis PHP.berbasis PHP.
Beberapa tahapan dalam interkoneksi dengan Database :
Membuka koneksi ke server MySQL$conn = mysql_connect (”host”,”username”,”password”);
M ilih d b Memilih databasemysql_select_db(”namadatabase”,$conn);
M ilih t b l d Memilih tabel dengan query$hasil = mysql_query(”SQL Statement”);
Mengambil record dari tabel
28
Mengambil record dari tabel$row = mysql_fetch_row($hasil);
![Page 29: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/29.jpg)
Contoh aplikasi berbasis J2ME - Database
Buat database KAMPUS, dengan tabel Mahasiswa yang g y gmemiliki field sebagai berikut, dengan NRP sebagai Primary Key :
Akan dibuat aplikasi untuk memasukkan data baru, dan menampilkan data dengan J2MEmenampilkan data dengan J2ME.
29
![Page 30: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/30.jpg)
Input Data ke Database
server
30
Simpan file php di http://127.0.0.1/prosesInsert.php
![Page 31: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/31.jpg)
Aplikasi Input Data ke Database
31
![Page 32: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/32.jpg)
Aplikasi Input Data ke Database
32
![Page 33: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/33.jpg)
Tampil Data dari Database
server
33
Simpan file php di http://127.0.0.1/modu13/prosesTampil.php
![Page 34: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/34.jpg)
Aplikasi Tampil Data dari Database
34
![Page 35: t Modul 11 J2ME](https://reader034.fdocument.pub/reader034/viewer/2022042512/55cf99f7550346d0339feb4f/html5/thumbnails/35.jpg)
Aplikasi Tampil Data dari Database
35