JSF de Scope Kavramları
JSF de Session Scope, View Scope, None Scope, Request Scope, Application Scope, ve Custom Scope olamak üzere 6 adet scope bulunmaktadır. Bunlardan en popüler olanlarından bahsetmeye çalışacağım.
Session Scope
Session scope kullanıcı login olduğunda oluşturulur kullanıcı logout olana kadar kullanılabilir. Kullanıcı bilgileri tutmak ve farklı sayfalardan bu bilgilere erişmek istediğimizde session scope kullanılır. Session scope da tutulan bilgilerin yenilenebilmesi için kullanıcının loguot olması gerekldir. Session invalidate edilmeden oturum kapatma işlemi yapılmamalıdır.
Application scope
Application scope uygulama ayağa kalktığı andan itibaren oluşturulur ve uygulama çalıştığı sürece kullanılabilir. Her yerden erişilebilir. Application scope kullanımı için örnek verecek olursak ; Mesela kullanıcı bilgileri tutmak istiyoruz ve her yerden buna erişmek istiyoruz eğer veri tabanında da tutmak istemiyorsak Application scope kullanarak işlemlerimizi gerçekleştirebiliriz. Application scope'un yeniden oluşturulabilmesi için uygulama sunucusunun yeniden başlatılması gerekir.
Request Scope
Request Scope kullanıcıdan gelen istek, yani kullanıcıdan gelen HTTP requesti ile oluşturulur ve yeni bir istek gelene kadar kullanılabilir.
View Scope
Sayfa bazlı bir scope çeşididir. Kullanıcı aynı sayfada kaldığı sürece kullanılabilir. Eğer farklı bir sayfaya geçilirse o sayfa için yeniden oluşturulur.
Bu 4 scope haricinde kullanımına pek rastlamadığım None Scope ve Custom Scope çeşitleride bulunmaktadır.
Session Scope
Session scope kullanıcı login olduğunda oluşturulur kullanıcı logout olana kadar kullanılabilir. Kullanıcı bilgileri tutmak ve farklı sayfalardan bu bilgilere erişmek istediğimizde session scope kullanılır. Session scope da tutulan bilgilerin yenilenebilmesi için kullanıcının loguot olması gerekldir. Session invalidate edilmeden oturum kapatma işlemi yapılmamalıdır.
Application scope
Application scope uygulama ayağa kalktığı andan itibaren oluşturulur ve uygulama çalıştığı sürece kullanılabilir. Her yerden erişilebilir. Application scope kullanımı için örnek verecek olursak ; Mesela kullanıcı bilgileri tutmak istiyoruz ve her yerden buna erişmek istiyoruz eğer veri tabanında da tutmak istemiyorsak Application scope kullanarak işlemlerimizi gerçekleştirebiliriz. Application scope'un yeniden oluşturulabilmesi için uygulama sunucusunun yeniden başlatılması gerekir.
Request Scope
Request Scope kullanıcıdan gelen istek, yani kullanıcıdan gelen HTTP requesti ile oluşturulur ve yeni bir istek gelene kadar kullanılabilir.
View Scope
Sayfa bazlı bir scope çeşididir. Kullanıcı aynı sayfada kaldığı sürece kullanılabilir. Eğer farklı bir sayfaya geçilirse o sayfa için yeniden oluşturulur.
Bu 4 scope haricinde kullanımına pek rastlamadığım None Scope ve Custom Scope çeşitleride bulunmaktadır.
Yorumlar
Yorum Gönder