JSP Elements Etiketi
JSP Etiketleri
Bu derste JSP'nin temel etiketlerini ve JSP'ye nasฤฑl yorum ekleneceฤini รถฤreneceฤiz. Bununla birlikte bir de JSP oluลturacaฤฤฑz ve o JSP'yi sunucuda รงalฤฑลtฤฑracaฤฤฑz.
JSP Beyanฤฑ
- Bir beyan etiketi bir parรงadฤฑr Java Deฤiลkenleri, yรถntemleri ve sฤฑnฤฑflarฤฑ bildirmek iรงin kod. Bildirim etiketi iรงinde bir deฤiลken veya yรถntem bildirirsek, bu, bildirimin servlet sฤฑnฤฑfฤฑnฤฑn iรงinde ancak hizmet yรถnteminin dฤฑลฤฑnda yapฤฑldฤฑฤฤฑ anlamฤฑna gelir.
- Bildirim etiketinin iรงinde statik bir รผye, bir รถrnek deฤiลken (bir sayฤฑ veya dize bildirebilir) ve yรถntemler bildirebiliriz.
Beyan etiketinin sรถzdizimi:
<%! Dec var %>
Burada Dec var, bildirim etiketinin iรงindeki yรถntem veya deฤiลkendir.
รrnek:
Bu รถrnekte bildirim etiketlerini kullanacaฤฤฑz.
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru Declaration Tag</title>
</head>
<body>
<%! int count =10; %>
<% out.println("The Number is " +count); %>
</body>
</html>
Kodun aรงฤฑklamasฤฑ:
Code รizgi 10: Burada bir deฤiลken sayฤฑsฤฑnฤฑ 10'a baลlatmak iรงin bildirim etiketini kullanฤฑyoruz.
Yukarฤฑdaki kodu รงalฤฑลtฤฑrdฤฑฤฤฑnฤฑzda aลaฤฤฑdaki รงฤฑktฤฑyฤฑ alฤฑrsฤฑnฤฑz:
รฤฑktฤฑ:
Bildirim etiketinde bildirilen deฤiลken รงฤฑktฤฑ olarak yazdฤฑrฤฑlฤฑr.
JSP Komut Dosyasฤฑ
- Scriptlet etiketi yazmaya izin verir Java JSP dosyasฤฑna kodlayฤฑn.
- JSP kapsayฤฑcฤฑsฤฑ, jsp'den servlet oluลtururken _jspservice() yรถntemindeki ifadeleri taลฤฑr.
- ฤฐstemcinin her isteฤi iรงin, JSP'nin hizmet yรถntemi รงaฤrฤฑlฤฑr, dolayฤฑsฤฑyla Scriptlet'in iรงindeki kod her istek iรงin yรผrรผtรผlรผr.
- Bir Scriptlet, JSP her รงaฤrฤฑldฤฑฤฤฑnda รงalฤฑลtฤฑrฤฑlan Java kodunu iรงerir.
Scriptlet etiketinin sรถzdizimi:
<% java code %>
Burada <%%> etiketleri scriptlet etiketidir ve iรงine java kodunu yerleลtirebiliriz.
รrnek:
Bu รถrnekte java kodunu kapsayan Scriptlet etiketlerini alฤฑyoruz.
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru Scriplet</title>
</head>
<body>
<% int num1=10;
int num2=40;
int num3 = num1+num2;
out.println("Scriplet Number is " +num3);
%>
</body>
</html>
Kodun aรงฤฑklamasฤฑ:
Code 10-14 satฤฑr: Scriptlet etiketlerinde num1 ve num2 adlฤฑ iki deฤiลkeni alฤฑyoruz. num3 ve num1'nin toplamฤฑ olan รผรงรผncรผ deฤiลken num2 alฤฑnฤฑr. รฤฑktฤฑ num3 olur.
Kodu รงalฤฑลtฤฑrdฤฑฤฤฑnฤฑzda aลaฤฤฑdaki รงฤฑktฤฑyฤฑ alฤฑrsฤฑnฤฑz:
รฤฑktฤฑ:
Komut Dosyasฤฑ Numarasฤฑnฤฑn รงฤฑktฤฑsฤฑ, num50 ve num1'nin toplamฤฑ olan 2'dir.
JSP ฤฐfadesi
- ฤฐfade etiketi, iรงine yerleลtirilen ifadeyi deฤerlendirir.
- Saklanan uygulamada saklanan verilere eriลir.
- Aritmetik ve mantฤฑksal gibi ifadeler oluลturmaya olanak tanฤฑr.
- Betiksiz JSP sayfasฤฑ รผretir.
Sรถzdizimi:
<%= expression %>
Buradaki ifade aritmetik veya mantฤฑksal ifadedir.
รrnek:
Bu รถrnekte ifade etiketi kullanฤฑyoruz
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru Expression</title>
</head>
<body>
<% out.println("The expression number is "); %>
<% int num1=10; int num2=10; int num3 = 20; %>
<%= num1*num2+num3 %>
</body>
</html>
Kodun aรงฤฑklamasฤฑ:
Code รizgi 12: Burada, iki sayฤฑyฤฑ (num1 ve num 2) รงarparak ve ardฤฑndan รผรงรผncรผ sayฤฑyฤฑ yani num3'รผ ekleyerek bir ifade kullandฤฑฤฤฑmฤฑz ifade etiketlerini kullanฤฑyoruz.
Yukarฤฑdaki kodu รงalฤฑลtฤฑrdฤฑฤฤฑnฤฑzda aลaฤฤฑdaki รงฤฑktฤฑyฤฑ alฤฑrsฤฑnฤฑz:
รฤฑktฤฑ:
ฤฐfade numarasฤฑ 120'dir, burada num1 ve num2 sayฤฑlarฤฑnฤฑ รงarpฤฑyoruz ve bu sayฤฑyฤฑ รผรงรผncรผ sayฤฑyla ekliyoruz.
JSP Yorumlarฤฑ
Yorumlar, JSP kapsayฤฑcฤฑsฤฑnฤฑn belirli metinleri ve ifadeleri gรถz ardฤฑ etmek istediฤi yorumlardฤฑr.
Belirli bir iรงeriฤi gizlemek istediฤimizde bunu yorumlar bรถlรผmรผne ekleyebiliriz.
Sรถzdizimi:
<% -- JSP Comments %>
Bu etiketler JSP'de yorum yapmak iรงin kullanฤฑlฤฑr ve JSP kapsayฤฑcฤฑsฤฑ tarafฤฑndan gรถz ardฤฑ edilir.
Bu, tarayฤฑcฤฑ tarafฤฑndan gรถz ardฤฑ edilen HTML yorumudur
รrnek:
Bu รถrnekte JSP yorumlarฤฑnฤฑ kullanฤฑyoruz
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru Comments</title>
</head>
<body>
<%-- Guru Comments section --%>
<% out.println("This is comments example"); %>
</body>
</html>
Kodun aรงฤฑklamasฤฑ:
Code รizgi 10: Burada kodun ne olduฤunu aรงฤฑklamak iรงin koda JSP yorumlarฤฑ ekliyoruz. JSP konteyneri tarafฤฑndan gรถz ardฤฑ edildi
Yukarฤฑdaki kodu รงalฤฑลtฤฑrdฤฑฤฤฑnฤฑzda aลaฤฤฑdaki รงฤฑktฤฑyฤฑ alฤฑrsฤฑnฤฑz:
รฤฑktฤฑ:
Println yรถnteminde yazdฤฑrฤฑlan รงฤฑktฤฑyฤฑ alฤฑyoruz. Yorumlar kapsayฤฑcฤฑ tarafฤฑndan dikkate alฤฑnmaz
Basit bir JSP Sayfasฤฑ oluลturma
- Bir JSP sayfasฤฑ, birleลtirilmiล bir HTML gรถvdesine sahiptir. Java iรงine kod koy
- ฤฐรงinde bildirimler, scriptletler, ifadeler, yorum etiketleri iรงeren basit bir JSP sayfasฤฑ oluลturuyoruz.
รrnek:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru JSP Example</title>
</head>
<body>
<%-- This is a JSP example with scriplets, comments , expressions --%>
<% out.println("This is guru JSP Example"); %>
<% out.println("The number is "); %>
<%! int num12 = 12; int num32 = 12; %>
<%= num12*num32 %>
Today's date: <%= (new java.util.Date()).toLocaleString()%>
</body>
</html>
Kodun aรงฤฑklamasฤฑ:
Code รizgi 1: Burada language, contentType ve pageEncoding gibi direktifleri kullanฤฑyoruz. Dil Java ve iรงerik tรผrรผ, ISO 8859 standart karakter kรผmesine sahip metin/html'dir. Sayfa kodlamasฤฑ standart karakter kรผmesidir.
Code รizgi 11: Burada JSP'ye yorum eklemek iรงin JSP yorumlarฤฑnฤฑ kullanฤฑyoruz
Code รizgi 14: Burada 12 ile baลlayan num32 ve num12 deฤiลkenlerini bildiriyoruz.
Code รizgi 15: Burada num12 ve num32 olmak รผzere iki sayฤฑyฤฑ รงarptฤฑฤฤฑmฤฑz bir ifade kullanฤฑyoruz.
Code รizgi 16: Burada date nesnesini kullanarak bugรผnรผn tarihini alฤฑyoruz.
Yukarฤฑdaki kodu รงalฤฑลtฤฑrdฤฑฤฤฑnฤฑzda aลaฤฤฑdaki รงฤฑktฤฑyฤฑ alฤฑrsฤฑnฤฑz
รฤฑktฤฑ:
Buraya baskฤฑ yapฤฑyoruz
- Bu guru JSP รถrneฤidir.
- Sayฤฑ, num12*num32'dir (12*12).
- Bugรผnรผn tarihi gรผncel tarihtir
Basit JSP Sayfasฤฑ nasฤฑl รงalฤฑลtฤฑrฤฑlฤฑr
- JSP, web sunucularฤฑnda veya uygulama sunucularฤฑnda รงalฤฑลtฤฑrฤฑlabilir.
- Burada bir web sunucusu kullanacaฤฤฑz ve onu bir savaล uygulamasฤฑna dahil ederek sunucuya yerleลtirebiliriz.
- Bir uygulamada (savaล) JSP oluลturabiliriz.
Bu, aลaฤฤฑdaki dizin yapฤฑsฤฑna sahip bir uygulamadฤฑr ve uygulamanฤฑn derlenmesi gerekir.
Bu uygulamanฤฑn derlenmesi gerekiyor ve derleme baลarฤฑlฤฑ olduktan sonra aลaฤฤฑdaki mesaj gรถrรผnecek:
Uygulama oluลturulduktan sonra uygulamanฤฑn sunucuda รงalฤฑลtฤฑrฤฑlmasฤฑ gerekir.
JSP'yi web sunucusunda รงalฤฑลtฤฑrmak iรงin IDE projesine saฤ tฤฑklayฤฑn (tutulma bu durumda kullanฤฑlฤฑr) ve birรงok seรงenek vardฤฑr. Sunucuda รงalฤฑลtฤฑrma seรงeneฤini seรงin. Aลaฤฤฑdaki ekran gรถrรผntรผsรผnde gรถsterilmektedir;
ลemada aลaฤฤฑdaki hususlar aรงฤฑklanmaktadฤฑr:
- Bir sunucu seรงmek veya sunucuyu bu uygulamaya manuel olarak eklemek iรงin iki seรงenek vardฤฑr. Bu durumda zaten JBoss sunucusunu uygulamaya ekledik, dolayฤฑsฤฑyla mevcut sunucuyu seรงiyoruz.
- Sunucuyu seรงtikten sonra, sunucu seรงeneฤi, hangi sunucuyu seรงmek istediฤimiz nokta 2'de gรถsterilir. Bu uygulamada birden fazla sunucu yapฤฑlandฤฑrฤฑlmฤฑล olabilir. Tรผm bu seรงeneklerden bir sunucu seรงebiliriz
- Bu seรงenek seรงildikten sonra bitir dรผฤmesine tฤฑklayฤฑn; uygulama o sunucuda รงalฤฑลacaktฤฑr.
Aลaฤฤฑdaki ekran gรถrรผntรผlerinde JSP programฤฑmฤฑzฤฑn รงalฤฑลtฤฑrฤฑldฤฑฤฤฑnฤฑ ve test uygulamasฤฑnฤฑn konuลlandฤฑrฤฑldฤฑฤฤฑnฤฑ gรถrebilirsiniz. JBoss sunucusu Kฤฑrmฤฑzฤฑ kutucukla iลaretlenen.
JSP'nin Dizin Yapฤฑsฤฑ
Dizin yapฤฑsฤฑnda tรผm konfigรผrasyon dosyalarฤฑnฤฑn ve kรผtรผphane dosyalarฤฑnฤฑn bulunduฤu WEB-INF klasรถrรผnรผ iรงeren bir kรถk klasรถr bulunmaktadฤฑr.
JSP dosyalarฤฑ WEB-INF klasรถrรผnรผn dฤฑลฤฑnda
JSP'nin dizin yapฤฑsฤฑ
รrnek:
Bu รถrnekte klasรถr yapฤฑsฤฑ aลaฤฤฑdaki gibi olan bir test uygulamasฤฑ bulunmaktadฤฑr:
รZET
- Bu yazฤฑmฤฑzda JSP'de kodu basitleลtiren ifade etiketleri, Scriptlet etiketleri gibi sรถzdizimsel unsurlarฤฑ รถฤrendik.
- JSP yorumlarฤฑnฤฑn kullanฤฑmฤฑ.
- Basit bir JSP sayfasฤฑ oluลturduk ve sunucuda รงalฤฑลmasฤฑnฤฑ saฤladฤฑk.











