Minggu, 12 Juli 2015

Pertemuan 14 - Session

SESSION


Apa itu Session ?
Merupakan fasilitas penyimpanan pada server untuk mengidentifikasi client. Session dikirim pertama kali oleh server ketika client melakukan request. Session disimpan di sisi server. Pada request – request selanjutnya yang berasal dari client yang sama, client akan tetap berada dalam session yang sama selama session tersebut valid

Session memiliki input type yang bersifat Hidden, dan menampung value inputan. Sehingga tidak dapat diketahui langsung oleh pengguna.

Session disimpan pada server. Dan memerlukan identifier atau identitas agar session dapat disimpan. Sehingga ketika session diakses pada waktu yang akan datang, dapat langsung dikenal. Biasanya digunakan untuk login website.

Session hampir sama dengan cookies, namun tidak disimpan pada browser.

Kesamaan Antara Cookies Dan Session :
Dapat menyembunyikan informasi atau menyimpan informasi, dan akan ketahuan siapa penggunanya oleh user, dengan menggunakan method get

Waktu Hidup Session :
Session memiliki waktu hidup di server. Session dapat diakhiri atas permintaan user. Session otomatis akan berakhir ketika kita menutup browser. Tapi waktu hidup server bisa juga diatur oleh server. Tidak ada batasan waktu bagi session, bisa dalam hitungan detik, menit, hari bulan bahkan bertahun – tahun.

Proses Dari Session :
1.      Pertama, browser melakukan request ke server 
2.     Server mengetahui IP client,kemudian memberikan datas ession yang akan dikirim lagi ke client dalam bentuk sessionID
3.      Untuk interaksi selanjutnya client mengirim session ID tersebut ke server 
4.  Server menggunakan sessionID ini untuk mendapatkan dataclient yang disimpan didatabase server

Pembuatan Session :
1.      Untuk mendapatkan Session saat ini atau menciptakan session baru :
HttpSession session = request.getSession( )
2.      Untuk menyimpan data di session :
session.setAttribute(NamaSession, value)

Pengambilan Data Pada Session :
Untuk membaca session, JSP menyediakan metode bernama getAtribute() yang dipanggil melalui variable session. Anda bisa memperoleh semua sessiondengan cara seperti berikut : session.getAttribute(NamaSession)

Menghapus Data Pada Session :
session.removeAttribute (NamaSession);
session.invalidate ( );


Dengan method invalidate( ) server akan melepaskan semua objek yang berkaitan dan melupakan session. Default waktu session di java adalah 30 menit atau tergantung setingan server di web.xml. Jika selama 30 menit tidak ada request otomatis session akan berakhir.

Perbedaan Antara Session Dan Cookies :


Contoh Pembuatan Session :

1.     Class : FormLogin.html




Hasilnya :

Merupakan tampilan form login bagi pengguna untuk login, dibuat menggunakan html. Yang menampung data username dan password pengguna.

2.     Class : login.jsp



Merupakan halaman untuk menampung data username dan password pengguna. Untuk memanggil objek session menggunakan setAtrribute

Class : loginsukses.jsp



Halaman yang digunakan ketika login berhasil, dimana username dan password yang diinputkan harus sama dengan yang ada pada halaman login.jsp

Class : errorlogin.jsp



Halaman ini tampil apabila pengguna mengklik link “Logout”, sehingga tidak dapat lagi melakukan pengecekkan nilai session.


Hasilnya :

3.     Class : ceksession.jsp



Hasilnya :


Berfungsi menampilkan value yang ditampung pada session yang telah dibuat. sehingga dapat diketahui siapa pengguna yang sedang aktif. Jika telah melakukan Logout, maka tidak dapat mencek session. Yang ditampilkan adalah username pengguna yang sedang aktif

4.     Class : logout.jsp


Hasilnya :


Akan tampil apabila link “Logout” diklik. Maka secara otomatis session juga akan mati atau terhapus, sehingga harus melakukan login ulang, karena session tidak lagi disimpan.

1 komentar: