JSP (Java Server Pages) - … · Servlet?????(Java???) • Sebelum menginjak ke JSP, kita harus...

of 55 /55
JSP (Java Server Pages) Muhamad Alif, S.Kom

Embed Size (px)

Transcript of JSP (Java Server Pages) - … · Servlet?????(Java???) • Sebelum menginjak ke JSP, kita harus...

  • JSP(Java Server Pages)

    Muhamad Alif, S.Kom

  • Servlet?????(Java???)

    Sebelum menginjak ke JSP, kita harus tahuterlebih dahulu dinamic code dari java untukpengembangan web application.

    Servlet???

    Servlet=class yang didefinisikan dalam javadan digunakan untuk meningkatkankemampuan web server dalam menanganirequest dan response client

  • Servlet (1)

    Servlet dapat menerima request danmenghasilkan response melalui protokolkomunikasi yang berbeda, tetapi sebagianbesar tipe yang digunakan adalah HTTP

    Java memiliki dua paket yang menyediakaninterface dan class untuk servlet, yaitujavax.servlet dan javax.servlet.http

  • Ambil dan Kirim Data

    Dua tipe request yang paling umum digunakan adalah GETdan POST, yang sering disebut sebagai request method.

    Request GET digunakan untuk mendapatkan ataumenerima informasi dari server yang berupa file HTML atauimage.

    Request POST digunakan untuk mengirimkan data keserver dalam bentuk HTML yang berisi data yangdimasukan oleh client.

    Method yang sering digunakan untuk memberikan responterhadap request client adalah doGet dan doPost yangmemiliki dua parameter, yaitu HttpServletRequest danHttpServletResponse

  • Method ServletRequestMethod Keterangan

    String getParameter(String name)

    Dikirim ke servlet sebagai bagian request GET atau POST.

    Enumeration getParameterNames()

    Mengembalikan nama seluruh parameter yang dikirim ke servlet sebagai bagian darirequest POST.

    String[] getParameterValues(String name)

    Mengembalikan array of string yang berisi nilai untuk parameter servlet

    Cookie[] getCookies()

    Mengembalikan array of cookie, merupakan objek client yang disimpan di server.

    Cookies dapat digunakan untuk mengidentifikasikan secara unik setiap client oleh server.

    HttpSession getSession(Boolean create)

    Mengembalikan objek HttpSession yang sedang berlasung pada client. Parameter

    akan bernilai jika tidak terdapat objek Httpsession di client. Secara fungsionalitas

    memilki kegunaan yang sama dengan Cookies.

  • Method ServletResponse

    Method Keterangan

    void addCookie(Cookie cookie)

    Digunakan untuk menambahkan cookie pada header sebagai respons ke client.

    ServletOutputStream getOutputStream()

    Mendapatkan output stream berbasis byte yang memungkinkan data teks dikirim

    ke client.

    PrintWriter getWriter()

    Mendapatkan output stream berbasis karakter yang memungkinkan data binary

    dikirim ke client.

    Void setContentType(String type)

    Menspesifikasikan type MIME respons ke browser.

  • JSP?????

    Java Server Pages (JSP) adalah bahasascripting untuk web programming yangbersifat server side seperti halnya PHP danASP.

    JSP dapat berupa gabungan antara baris HTML(Client Code) dan fungsi-fungsi dari JSP itusendiri.

  • JSP?????

    JSP bertujuan untuk menyederhanakanpembuatan dan manajemen halaman web yangbersifat dinamis, dengan cara memisahkancontent dan presentasi

    JSP merupakan halaman yang menggabungkanHTML dengan scripting tag dan program java

    Pada saat JSP dipanggil client melalui browser,JSP tersebut akan di kompile terlebih dahulumenjadi servlet, dan kemudian hasilnyadikembalikan ke client

  • Ilustrasi JSP

    Bean Bean

    Beberapa Contents Static

    Diterjemahkan Servlet

    UsesUses

  • Kelebihan JSP

    JSP dapat berjalan pada sembarang platform.

    JSP cenderung memiliki performansi yang lebihbaik, karena JSP dilakukan kompile terlebihdahulu menjadi servlet yang berupa bytecode.

    Didukung bahasa Java yang memilki kemampuanOOP dan tingkat reuseability tinggi.

    Dapat menggunakan JavaBean untukmengenkapsulasi kode-kode java.

  • Kelemahan JSP

    Proses kompile terhadap halaman JSPmengakibatkan client harus menunggu lebihlama pada saat pertama kali di lakukanloading. Hal ini tentu saja menyebabkankecepatan proses JSP secara menyeluruhberkurang.

  • Elemen-elemen JSP Struktur halaman JSP adalah penambahan program

    Java dalam tag pada suatu halaman HTMLuntuk membangkitkan content yang bersifatdinamik.

    JSP memiliki tiga komponen utama, yaitu :1. Directives : merupakan suatu petunjuk bagi web

    container tentang sesuatu yang harus dilakukanpada saat container melakukan compile halamanJSP.

    2. Scripting Elements : tag untuk menuliskanprogram Java.

    3. Action : special tag yang memberikan pengaruhpada halaman JSP pada saat runtime.

  • 1. Directives

    Sintaks :

    Directives terdiri dari tiga bagian, yaitu :

    a. Page Directive

    b. Include Directive

    c. Taglib Directive

  • a. Page Directive

    Untuk menentukan dan memanipulasi atribut-atribut pada halaman JSP serta memberikan informasi ke container untuk atribut-atribut yang memerlukan proses tertentu.

    Sintaks :

    Contoh :

  • a. Page DirectiveAttribute Keterangan Default Nilai

    Language Menentukan bahasa pemrograman yang

    digunakan

    Java

    Extends Digunakan untuk men-generate superclass Tidak adaImport Mengimport package atau class java,

    seperti halnya pada program Java

    Tidak ada

    Session Menentukan apakah halaman JSP

    menggunakan HTTP session

    true

    Buffer Menentukan model buffering untuk

    output stream ke clientautoFlush Melakukan reset isi buffer jika sudah

    penuh

    true

    isThreadSafe Mendefinisikan tingkat keamanan

    mengenai masalah threading halaman JSP.

    Jika false request akan diproses sebagai

    single Thread, berurutan sesuai urutan

    kedatangan request

    true

    Info Mendefinisikan string informasi yang

    dapat diperoleh dari implementasi metodeServlet.getServletInfo()

    Tidak ada

    errorPage Menentukan error page, sehingga jika

    terjadi error, maka halaman JSP ini akan

    ditampilkan

    Tidak ada

    isErrorPage Memberikan indikasi apakah halaman JSP

    merupakan halaman error dari halaman

    JSP yang lain

    false

    contentType Menentukan encoding karakter pada JSPdan tipe MIME untuk respons yang

    dihasilkan JSP.

    MIME-TYPE

    text /

    html

    CHARSET

    ISO-8859-1

  • a. Page Directive

    Contoh :

  • b. Include Directive

    Untuk menyisipkan isi file lain ke dalam file JSP

    Sintaks :

    Contoh :

  • c. Taglib Directive

    Untuk penggunaan tag library atau tag tambahan.

    Contoh :

  • 2. Scripting Elements

    Terdiri dari tiga elemen, yaitu :

    a) Declarations

    b) Scriptlets

    c) Expression

  • a.Declarations

    Declarations merupakan blok program Javayang digunakan untuk mendeklarasikanvariable dan method yang akan digunakandalam program. Variable yang dideklarasikanpada bagian ini akan berperan sebagaivariable global pada servlet hasil kompile

    Sintaks :

    Contoh :

  • b. Scriptlets

    Scriptlets merupakan blok program Java yang dieksekusi pada saat pemrosesan request. Scriptlets akan dijalankan sesuai dengan instruksi program yang diberikan.

    Sintaks :

    Contoh :

  • c. Expression

    Expression merupakan cara untuk memperpendek penulisan scriptlets dan akan mengembalikan nilai String yang dikirim melalui output stream.

    Sintaks :

  • Expression

    Contoh :


    Hasil Analisa dan Review

    -------------> Expression

  • 3. Action Action merupakan tag yang mempengaruhi

    perilaku halaman JSP pada saat runtime. JSP mengenal tag action standar dan custom tag

    Tag action standar JSP adalah sebagai berikut :

    1.

    2.

    3.

    4.

    5.

    6.

  • Action tag ini berfungsi untuk meng-instantiate suatu Java Object (Java Bean) agarkemudian dapat digunakan pada halaman JSP.Penggunaan bean ini merupakan salah satucara untuk memisahkan antara logic danpresentation pada JSP

    Sintaks :

  • Atribut pada

    Atribut Deskripsi Default Nilai

    id Nama untuk mengindentifikasi bean yang akan di-

    instantiate

    Tidak ada

    scope Jangkauan reference terhadap bean. Nilai yang tersediauntuk scope antara lain : page, request, session,

    application

    page

    class Nama class bean yang akan digunakan Tidak ada

    beanName Atribut khusus yang terkait dengan methodinstantiate() pada class java.beans.Beans

    Tidak ada

    Type Menentukan tipe class Nilai dari atribut

    class

    Contoh :

  • Action tag standar ini digunakan bersamadengan action tag . Action tagini berfungsi untuk men-set nilai propertiesyang terdapat pada bean.

    Sintaks :

    Contoh :

  • Action tag ini merupakan kebalikan dari actiontag , dimana berfungsi untukmengambil nilai property pada Java Bean.

    Sintaks :

    Contoh :

  • Action tag ini berfungsi untuk menset nilai-nilaiparameter yang akan digunakan dalam halamanJSP.

    Sintaks :

    Contoh :

  • Action tag ini memiliki fungsi yang serupadengan directive . Tetapi memiliki perbedaanmendasar, yaitu waktu eksekusi.

    Untuk tag dieksekusi pada saatrequest dan directive include dieksekusi padasaat kompile.

  • Sintaks :

    Contoh :

  • Action tag ini berfungsi untuk melakukan forward ke suatu halaman lain, baik halaman HTML atau JSP.

    Sintaks :

    Contoh :

  • Form

    Form adalah salah satu tag HTML yangdigunakan untuk mengirimkan suatuparameter dari satu halaman ke halamanlainnya

    Sebenarnya ada beberapa cara yang dapatdigunakan untuk mengirimkan suatu nilai(parameter) dari satu halaman ke halamanlainnya, misalkan

    Form, URL parameter, cookie, session

  • Transfer Parameter dengan Form

    Halaman.html entry.jsp

    Suatu Form Login

    String User = request.getParameter(User);

    String Pwd = request.getParameter(Pwd);

    User Name :


    Password :

  • Transfer Parameter dengan URL Parameter

  • Komputer Client

    Transfer Parameter dengan Cookie

    Halaman.html entry.jsp

    Cookie

  • Transfer Parameter dengan Session

    Komputer ServerHalaman.jsp entry.jsp

    Session

  • Membaca Parameter

    Menggunakan Obyek request dengan Metode getParameter()

    Contoh Pada file entry.jsp

  • HTTP Transfer Parameters

    Mengambil/membaca nilai parameter yang ditransfer melalui protokol HTTP

    String request.getParameter(parameter)

    Contoh

  • Menangani Client Code Dengan Server Code/JSP

    Client

    JSP engine dan

    Web server

    File JSP

    Component

    Request

    Response

    Request

    Request

    Response

    Response

  • Alif file : Form.jsp

    Menampilkan nilai variabel yang dimasukan melalui Form

    Form.jsp

    AyoAmbilForm.jsp

  • Alif file : AyoAmbilForm.jsp

    Menampilkan Data Yang Anda Masukan

    Melalui Form

  • JSP???Database???Wowwww

    JSP sebagai teknologi untuk pembuatanaplikasi web memiliki kemampuan menanganidatabase dengan menggunakan class daninterface Java Database Connectivity ( JDBC )sebagai driver antara program JSP dandatabase server

  • JDBC

    JDBC adalah Application ProgrammingInterface (API) yang dikembangkan oleh SunMicrosystem untuk menyediakan akses datauniversal dalam bahasa pemrograman Java.

    JDBC menyediakan mekanisme untuk koneksidatabase, query database, dan traksaksidatabase.

    JDBC tidak melakukan standarisasi SQL, tetapidapat mendukung sintaks SQL untuk masing-masing vendor database

  • Diagram JDBC

    JDBC bukan database server, tetapimerupakan penyedia mekanisme untukberkomunikasi antara aplikasi Java dandatabase server

    SQL Server

    My SQL

    Oracle

    Driver

    Driver

    Driver

    JDBCProgram

    Java / JSP

  • Contoh Akses Database dengan JSP

  • Tampilan Output (Running)

  • Struktur Tabel Dalam Database

  • List Data Pegawai

  • Terima Kasih

    Semoga Bermanfaat

  • Bahan Ajar UAS

    Materi sebelum UTS

    Soal UTS

    Materi setelah UTS

    Pelajari cara buat code untuk melakukan editdan delete pada slide Contoh Akses Database dengan JSP

  • Aturan UAS

    Open Book

    Waktu 60 menit

    Dalam bentuk TULIS (Berbasis pengetahuan tentang pemrograman web +Live Coding)

    Pelaksanaan :

    Jumat,21 Desember 2012

    Pukul 13.30 (harus tepat waktu)-14.30

    Tempat : di ruang kuliah biasanya