JSP

JSP – Session Implicit Object – 12

Merhaba, bir önceki yazıda  response implicit nesnesinden bahsetmiştik. Bu yazıda ise kullanıcı giriş, çıkış işlemlerinde kullanılan session nesnesine değineceğiz.

Session nesnesi JSP ile yazılım geliştirirken en çok kullanılan nesnelerden biridir. İşlevi, kullanıcı bilgilerine oturumu aktif olduğu süre boyunca uygulama içerisinde her yerden erişim sağlamaktır.

Önce Session nesnesinin metotlarını inceleyelim, sonrasında bir kullanıcı login-logout örneği yapalım.

  • setAttribute(String, object)
  • getAttribute(String name)
  • removeAttribute(String name)
  • getAttributeNames()
  • getCreationTime()
  • getLastAccessedTime()
  • isNew()
  • invalidate()
  • getMaxInactiveInterval()

1. setAttribute(String, object) : Bu metot session nesnesinde veri saklamamızı sağlar. Metodun ikinci parametresi saklamak istediğimiz veriyi alır, ilk parametresi ise bu veriye hangi isimle ulaşacağımızı belirler. Veri Object tipinde olduğundan her tipte veri saklayabilir.

2. getAttribute(String name) : Parametre olarak aldığı değere bağlı bir veri saklanıyorsa onu getirir. Eğer saklanan bir veri yoksa null döndürür.

3. removeAttribute(String name) : Session nesnesinde saklanan bir veriyi silmeyi sağlar.  Parametre olarak veriye atanmış String tipindeki değer verilmelidir.

4. getAttributeNames() : Session nesnesinde o anda ne kadar veri varsa o verilere karşılık gelen String tipindeki değerleri Enumeration tipinde döndürür.

5. getCreationTime() : Session nesnesinin ilk oluşturulduğu tarihi verir.

6. getLastAccessedTime() : Oturumun açık olduğu süre boyunca uygulamaya en son erişilen tarihi verir.

7. isNew() : Oturumun yeni olup olmadığını kontrol eder. True ya da false döndürür. Aynı zamanda tarayıcının cookie(çerez) özelliğinin açık olup olmadığını kontrol etmek için de kullanılır. Eğer cookie özelliği kapalıysa isNew() metodu her zaman true dönecektir.

8. invalidate() : Oturumu sonlandırmaya yarar. Bu metot çağrıldıktan sonra tekrar session nesnesine erişilmeye çalışılırsa hata alınır.

9. getMaxInactiveInterval() : Kullanıcı hiçbir işlem yapmazsa, oturumun ne kadar sürede sonlanacağını saniye cinsinden döndürür. Varsayılan değeri 1800 saniye(30dk) ‘dır.

JSP Session Login – Logout Example

Form.jsp

FormControl.jsp

UserPage.jsp

Error.jsp

Logout.jsp

Ekran Görüntüleri

1 2

Birkaç saniye sonra sayfayı yenilersek, oturum açma tarihi aynı kalır, son erişme tarihi değişir.

Yanlış bilgi girersek, FormControl.jsp sayfasındaki kontrolümüzden sonra Error.jsp‘ye yönlendirilecektir.

4

 

5

Bu yazıda Session nesnesini anlatmaya çalıştım . Herhangi bir sorunuz olursa bana profil resmimin altındaki iletişim adreslerinden ulaşabilirsiniz. Bir sonraki yazı application nesnesi hakkında olacak. Görüşmek üzere. Hoşçakalın..

Sakarya Üniversitesi Bilgisayar Mühendisliği 3.sınıf öğrencisi ve Özgür Yazılım Topluluğu üyesi. Java ile yazılım geliştirmeyi sever. Java’yı sevdiği gibi kahveyi de sever. Yeni teknolojilere meraklıdır. Araştırmacıdır. Motosiklet en büyük tutkusudur.