JSP Directive

Merhaba arkadaslar, bu yazımda JSP directive konusuna deginecegim.

JSP Directive

Bildiginiz gibi JSP sayfalarımız önce java koduna translate edilip daha sonra compile edilerek Servlet’lere çevriliyordu. Bu aşamalar gerçekleşirken directive’ler yardımıyla web contaıner’a bazı bilgiler vererek aşamalara müdahele edebilir, aşamaların nasıl olacagını belirleyebiliriz.

JSP directiveler <%@ %> etiketleri arasında “directive” “attribute” ve “value” olarak yazılır.  3 tane directive tipi bulunur, bunlar;

  • page directive : JSP sayfası için attribute tanımlamaları yapar.
  • include directive : External bir kaynak eklemek için kullanılır.
  • taglib directive : JSP’de kullanabilmek için tag tanımı yapılmasını sağlar.

Directive’ler kullarak dedigim gibi jsp -> servlet aşaması için contaıner’ımıza bunu nasıl yapacagını belirtiyoruz.

Page Directive

<%@  page attributeName=”attributeValue”%> şeklinde kullanılır. Tanımlı olan attributeName’ler asagıdaki gibidir;

  • import : class, package vs java class’larını jsp’ye import etmeyi saglar.
  • contentType : mime type’ı belirler.
  • extends : jsp -> servlet aşamasında jsp class’ının hangi class’dan inherit edilecegini belirtir, genelde kullanılmaz.
  • info : servlete çevrilen jsp için bilgi niteligi tasır. info ile verilen deger, getServletInfo() methodu cagrıldıgında return edilir.
  • buffer : response output buffer size’ı belirler. Default olarak 8kb’dir.
  • language : Jsp’de kullanıcak dili belirtir, default olarak java’dır.
  • isELIgnored : Expression Language kullanılıp kullanılmayacagını belirtir.
  • isThreadSafe : Thread safe yapmak icin kullanılır. false verilirse jsp class’ı SingleThreadModel interfacesini implemente eder.
  • autoFlush : buffer’ın dolması durumunda otomatik olarak tazelenmesi icin kullanılır.
  • session : Jsp sayfasında session olup olmayacagını belirtir.
  • pageEncoding : encodingi tanımlar.
  • errorPage : jsp’de herhangi bir exception alınırsa errorPage olarak verilen sayfaya request iletilir.
  • isErrorPage : jsp dosyasının error page olup olmadıgını belirtir.

 

Örnek kullanımlar aşağıdaki gibidir;

^^ index.jsp sayfasına açtıgımızda 10/0 ifadesinden dolayı exception alıp bizi error page’e yönlendirecektir. error.jsp’ye bakalım;

“exception” ifadesi ancak error page olarak tanımlanan jsp’de geçerlidir.

 

Screenshot from 2016-04-16 14:01:19

Include Directive

External kaynak eklemek icin kullanılır, kaynaklar jsp, html yada text vs olabilir. Kullanımı <%@ include file=”fileName” %> şeklindedir.

Her jsp sayfanızda olan ortak kısımları(header, footer) gibi başka bir sayfa olarak tanımlayıp istediginiz yerde include etmeniz daha az kod daha anlasılır kod demek olucaktır.

header.jsp

index.jsp

 

Taglib Directive

Tablib’ler hazır componentlerin kullanılmasında kullanılır. Örneğin, github’da faydalı methodları/özellikleri bulunan bir tag lib buldunuz bunu jsp sayfanıza ekleyip kullanabilirsiniz. Kullanımı <%@ taglib uri=”taglibUri” prefix=”taglibPrefix” %>

Prefix + tablibde bulunan method ismi kullanılabilir.

Not : JSTL(Jsp Standart Tag Library) yazısı yazacagım ilerde, bu konuya orada detaylıca deginecegim.

Yazıyı burada sonlandırıyorum arkadaslar, saglıcakla kalın.

Örnek uygulama suradan erisebilirsiniz : JSP Directive

~ A.Akkus

660 Total Views 1 Views Today