Merhaba, bu yazıda JSP Action Tags‘i ele alacağız. JSP action etiketleri yönlendirme, dahil etme, java beanleri kullanma gibi işlemlerde kullanılır.
Başlıca JSP Action Etiketleri
<jsp:include>
<jsp:forward>
<jsp:param>
<jsp:useBean>
<jsp:getProperty>
<jsp:setProperty>
<jsp:include> Etiketi
Bir JSP sayfası içerisinde başka bir JSP sayfasını çağırmamızı sağlar. Bu sayede kodlarımızı farklı JSP sayfalarına yazarak bölebilir, bir sayfa içerisinde hepsini çağırıp kullanabiliriz.
<%@ include … %> etiketi ile aynı işlevi görür fakat <jsp:include> etiketi ile dahil etme işlemi request(istek) geldiğinde gerçekleşir, <%@ include … %> etiketi ile dahil etme işlemi ise JSP sayfaları Servlet‘e çevrilirken gerçekleşir.
Kullanım:
1
<jsp:includepage="Dahil edilecek sayfa adresi"/>
Örnek Uygulama
index.jsp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<%@pagelanguage="java"contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html; charset=UTF-8"><title>Insert title here</title></head><body><jsp:includepage="sayfa.jsp"/></body></html>
JSP sayfasına yapılan bir isteği başka bir sayfaya yönlendirmek için kullanılır. Bu etiketin bir özelliği de yönlendirme yapıldığında adresin değişmemesidir. Örnek uygulamada bunu görebilirsiniz.
Kullanım:
1
<jsp:forwardpage="Gidilecek sayfanın adresi"/>
<jsp:forward> Örnek Uygulama
index.jsp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<%@pagelanguage="java"contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html; charset=UTF-8"><title>Insert title here</title></head><body><jsp:forwardpage="sayfa.jsp"/></body></html>
sayfa.jsp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<%@pagelanguage="java"contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html; charset=UTF-8"><title>Insert title here</title></head><body><p>
index.jsp'den buraya geldik ama adres hala aynı :)
</p></body></html>
Ekran Görüntüleri
<jsp:param> Etiketi
Bu etiket ile diğer JSP etiketlerine(<jsp:include>,<jsp:forward> vs.) parametre gönderilebilir. Bu şekilde yönlendirilen ya da dahil edilen JSP sayfaları bu parametrelere ulaşabilir.
<%@pagelanguage="java"contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html; charset=UTF-8"><title>Insert title here</title></head><body><jsp:forwardpage="sayfa.jsp"><jsp:paramvalue="Merhaba Dunya!"name="parametre"/></jsp:forward></body></html>
sayfa.jsp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<%@pagelanguage="java"contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html; charset=UTF-8"><title>Insert title here</title></head><body><p><%=request.getParameter("parametre")%></p></body></html>
Ekran Görüntüleri
<jsp:useBean> Etiketi
JSP sayfalarında Java Bean‘leri çağırmak için kullanılır. Java Beans konusunu daha sonra detaylı olarak göreceğiz. Şimdi sadece basit bir örnek verelim.
Kullanım:
1
<jsp:useBeanid="Beani temsil edecek herhangi bir isim"class="paketAdi.classAdi"/>
Yukarıdaki kod ile kullanacağımız Java Class‘ından bir nesne oluşturmuş olduk. <jsp:setProperty> ve <jsp:getProperty> etiketlerini kullanarak bu nesne üzerinden değer atama(Set) ve değer çekme(Get) işlemleri yapabileceğiz.
<jsp:setProperty> Etiketi
Bu etiket kullanılmadan önce jsp:useBean etiketi tanımlanmış olmalıdır. jsp:useBean etiketi ile belirtilen bean‘in değişkenlerine değer ataması yapar. Adından da anlaşılacaği gibi set metodunun işlevini yapar.
Kullanım:
1
2
<jsp:useBeanid="Beani temsil edecek herhangi bir isim"class="paketAdi.sinifAdi"/><jsp:setPropertyname="useBean etiketinde verdiğimiz id"property="Sınıftaki değişken adı"/>
Eğer birden fazla değişkene aynı anda değer ataması yapmak istiyorsak ‘*’ kullanabiliriz.
useBean, getProperty ve setProperty ile İlgili Örnek Uygulama
index.jsp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<%@pagelanguage="java"contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html; charset=UTF-8"><title>Insert title here</title></head><body><formaction="formuAl.jsp"method="post"><inputname="isim"type="text"><inputname="soyisim"type="text"><inputtype="submit"></form></body></html>
İsim ve soyisim alan basit bir form oluşturduk. Butona basıldığında formuAl.jsp‘ye gidecek. Şimdi bir Bean(Java Sınıfı) oluşturalım.
Sınıfımızın içerisinde formdan gelen verileri karşılamak için 2 adet değişken oluşturduk.Bu değişkenlerin get ve set metotlarını oluşturduk. Şimdi formuAl.jsp sayfamızda bu bean‘i kullanalım.
formuAl.jsp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<%@pagelanguage="java"contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html; charset=UTF-8"><title>Insert title here</title></head><body><jsp:useBeanid="kisi"class="deneme.Kisi"/><jsp:setPropertyproperty="*"name="kisi"/>
Hoşgeldiniz Sayın
<jsp:getPropertyname="kisi"property="isim"/><jsp:getPropertyname="kisi"property="soyisim"/></body></html>
Önce jsp:useBean ile kullanacağımız sınıfı tanımladık ve ondan bir nesne oluşturduk.
jsp:setProperty etiketini kullanarak formdan gelen verileri bean’in değişkenlerine atadık. ‘*’ kullanarak tüm değerleri tek satırda atamış olduk. Burada önemli nokta formdaki inputların name değerleri. O name değerleri Bean içindeki değişkenlerin isimleriyle aynı olmalı. Eğer değilse girdiğiniz değeri değil null değeri atar.
Hemen altında bean değişkenlerine atadığımız değerleri çekip bir hoşgeldin mesajı oluşturduk.
Ekran Görüntüleri
Bu yazıda JSP Action Etiketlerinden en çok kullanılanları anlatmaya çalıştım. Bir sonraki yazıda JSP Expression Tags konusuna değineceğiz. Görüş, öneri ve sorularınızı yorum kısmında belirtebilirsiniz. Hoşçakalın..