JSP Eylem Etiketleri

JSP Eylemi nedir?

JSP eylemleri, sunucu uygulaması motorunun davranışını denetlemek için XML sözdizimindeki yapıyı kullanır. Dahil etme ve iletme gibi JSP Eylemleri aracılığıyla dinamik olarak bir dosya ekleyebilir, fasulye bileşenlerini yeniden kullanabilir, kullanıcıyı başka bir sayfaya yönlendirebiliriz vb. Direktiflerden farklı olarak sayfaya her erişimde eylemler yeniden değerlendirilir.

Sözdizimi:

<jsp:action_name attribute="value" />

Bu eğitimde JSP Standart Eylemlerini öğreneceksiniz. JSP Standart Eylem etiketleri, sunucu uygulaması motorunun davranışını kontrol etmek için kullanılır.

JSP'de Yaygın Olarak Kullanılan Eylem Etiketlerinin Listesi

JSP'de 11 çeşit Standart Eylem Etiketi vardır ve işte bunların tam listesi.

Eylem Etiketi Adı Sözdizimi Tanım
jsp:useBean JSP sayfasında bean'leri çağırmak ve kullanmak için kullanılır.
jsp:dahil et İstek işleme sırasında geçerli dosyaya başka bir JSP dosyası ekler.
jsp:setÖzellik Bir fasulyenin özelliğini ayarlar.
jsp:getProperty Bir fasulyenin özelliğini alır ve onu çıktı için bir dizgeye dönüştürür.
jsp:ileri İsteği başka bir JSP veya statik sayfaya iletir.
jsp:eklenti Tanıtımlar Java Applet veya fasulye gibi bileşenleri JSP'ye aktarır ve otomatik olarak etiketler üretir.
jsp:gövde İstek işleme sırasında dinamik olarak oluşturulan XML öğelerini tanımlar.
jsp:metin şablon metni Yalnızca metin ve EL ifadeleri içeren JSP sayfalarına şablon metni eklemek için kullanılır.
jsp:param jsp:plugin eylemi içerisinde ekstra veri eklemek için parametreler geçirir.
jsp:özellik Dinamik olarak oluşturulan XML niteliklerini tanımlar.
jsp:çıkış Çıktıda kullanılacak XML veya DOCTYPE bildirimini belirtir.

jsp:useBean

  • Bu eylem adı JSP sayfasında fasulye kullanmak istediğimizde kullanılır.
  • Bu tag ile kolaylıkla bir bean çağırabiliriz.

Jsp'nin sözdizimi: UseBean:

<jsp:useBean id="" class="" />

Burada bu fasulyenin tanımlayıcısı belirtilir ve sınıf, fasulye sınıfının tam yoludur.

Ö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>Action JSP1</title>
</head>
<body>
<jsp:useBean id="name" class="demotest.DemoClass">
</body>
</html>

Kodun açıklaması:

Kod Satırı 10: Yukarıdaki kodda fasulyenin “fasulye kimliğini” ve “sınıf yolunu” kullanıyoruz.

jsp:dahil et

  • Aynı zamanda bir jsp dosyasını başka bir dosyaya eklemek için de kullanılır. talimatlar.
  • İstek işleme aşamasında eklenir

Jsp'nin sözdizimi:include

<jsp:include page="page URL" flush="true/false">

Örnek:

Action_jsp2 (Kod Satırı 10) bir date.jsp dosyası ekliyoruz

<%@ 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>Date Guru JSP</title>
</head>
<body>
<jsp:include page="date.jsp" flush="true" />
</body>
</html>

Date.jsp

<%@ 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>Insert title here</title>
</head>
<body>
<p>
Today's date: <%= {new java.util.Date()).toLocaleString()%>
</p>
</body>
</html>

Kodun açıklaması:

Action_jsp2.jsp

Kod Satırı 10: İlk dosyaya date.jsp dosyasını action_jsp2.jsp dosyasına ekliyoruz.

Date.jsp:

Kod Satırı 11: Bugünün tarihini date.jsp dosyasındaki 11. kod satırına yazdırıyoruz.

Kodu çalıştırdığınızda çıktı aşağıdaki gibidir.

jsp:dahil et

Çıktı:

  • Tarih dosyası ana jsp'ye dahil edildiğinden, bugünün tarihini saatle birlikte görüntüler.

jsp:setÖzellik

  • JSP'deki standart eylemlerin bu özelliği, fasulyenin özelliğini ayarlamak için kullanılır.
  • Özelliği ayarlamadan önce bir fasulye tanımlamamız gerekiyor

Sözdizimi:

<jsp:setproperty name="" property="" >

Burada, name özelliği ayarlanan fasulyeyi ve ayarlamak istediğimiz özelliği tanımlar. Ayrıca, value ve param özniteliğini ayarlayabiliriz. Burada value zorunlu değildir ve özelliğe atanan değeri tanımlar. Burada param, değerin alınabileceği istek parametresinin adıdır. setproperty örneği aşağıda getproperty ile gösterilecektir.

jsp:getProperty

  • Bu özellik fasulyenin özelliğini elde etmek için kullanılır.
  • Bir dizgeye dönüşür ve sonunda çıktıya eklenir.

Sözdizimi:

<jsp:getAttribute name="" property="" >

Burada, özelliğin alınması gereken fasulyenin adı ve fasulye tanımlanmalıdır. Özellik niteliği, alınacak fasulye özelliğinin adıdır.

setProperty ve getProperty örneği:

TestBean.java:

package demotest;

import java.iO.Serializable;

public class TestBean implements Serializable{
	
	private String msg = "null";
	
	public String getMsg() {
		return msg;
	}
	
	public void setMsg(String msg) {
		this.msg = msg;
	}
}

Action_jsp3.jsp

<%@ 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 Action 3</title>
</head>
<body>
<jsp:useBean id="GuruTest" class="demotest.TestBean" />
<jsp:setProperty name="GuruTest" property="msg" value="GuruTutorial" />
<jsp:getProperty name="GuruTest" property="msg" />
</body>
</html>

Kodun açıklaması:

TestBean.java:

Kod Satırı 5: TheTestBean serileştirilebilir sınıfı uyguluyor. Kodda alıcı ayarlayıcıları olan bir fasulye sınıfıdır.

Kod Satırı 7: Burada özel string değişkeni msg'yi “null” olarak alıyoruz

Kod Satırı 9-14: Burada “msg” değişkeninin alıcı ve ayarlayıcılarını kullanıyoruz.

Action_jsp3.jsp

Kod Satırı 10: Burada “useBean” etiketini kullanıyoruz, burada jsp sınıfında kullanılması gereken fasulyeyi yani TestBean'ı belirtiyoruz.

Kod Satırı 11: Burada Bean TestBean özellik mesajının değerini “GuruTutorial” olarak ayarlıyoruz.

CodeLine12: Burada getProperty'yi kullanarak, çıktıda bulunan bean TestBean yani GuruTutorial için msg özelliğinin değerini alıyoruz.

Yukarıdaki kodu çalıştırdığınızda aşağıdaki çıktıyı alırsınız:

jsp:getProperty

Çıktı:

Bu örnekte, TestBean'i kullanarak setProperty'yi kullanarak "gurutest" özelliğini ayarlamaya ve getProperty'yi kullanarak "GuruTutorial" olarak özelliğin değerini almaya çalışıyoruz.

jsp:ileri

İsteği başka bir jsp'ye veya herhangi bir statik sayfaya iletmek için kullanılır.

Burada istek parametresiz veya parametrelerle iletilebilir.

Sözdizimi:

<jsp:forward page="value">

Burada değer, isteğin nereye iletilmesi gerektiğini temsil eder.

Örnek:

Action_jsp41.jsp

<%@ 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 Action JSP1</title>
</head>
<body>
<jsp:forward page="jsp_action_42.jsp" />
</body>
</html>

Jsp_action_42.jsp

Guru Action JSP2</title>
</head>
<body>
<a>This is after forward page</a>
</body>
</html>

Kodun açıklaması

Action_jsp41.jsp

Kod Satırı 10: Burada, isteği öznitelikte belirtilen sayfaya, yani jsp_action_42.jsp'ye iletmek için ileri JSP Eylemini kullanıyoruz.

Jsp_action_42.jsp

Kod Satırı 10: Action_jsp41.jsp'yi çağırdığımızda istek bu sayfaya iletilir ve “Bu ileri sayfadan sonradır” şeklinde çıktı alırız.

Yukarıdaki kodu çalıştırdığımızda aşağıdaki çıktıyı alırız

jsp:ileri

Çıktı:

action_jsp41.jsp diyoruz ancak istek jsp_action_42.jsp'ye iletiliyor ve o sayfanın çıktısını “Bu ileri sayfadan sonra” olarak alıyoruz.

jsp:eklenti

  • Tanıtmak için kullanılır Java Bileşenleri jsp'ye dönüştürebilirsiniz, yani Java bileşenleri bir uygulama veya fasulye olabilir.
  • Tarayıcıyı algılar ve ekler veya JSP dosyaya etiketler

Sözdizimi:

<jsp:plugin type="applet/bean" code="objectcode" codebase="objectcodebase">
  • Burada tip ya bir nesneyi ya da fasulyeyi belirtir
  • Kod, uygulamanın veya çekirdeğin sınıf adını belirtir
  • Kod tabanı, sınıf dosyalarını içeren temel URL'yi içerir

jsp:param

  • Bu, yukarıda açıklanan eklenti nesnesinin alt nesnesidir
  • Ek parametreler sağlamak için bir veya daha fazla eylem içermelidir.

Sözdizimi:

<jsp:params>
<jsp:param name="val" value="val"/ >
</jsp:params>

Eklenti ve parametre örneği

Action_jsp5.jsp

<%@ 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>Action guru jsp5</title>
</head>
<body>
<jsp:plugin type="bean" code="Student.class" codebase="demotest.Student">
  <jsp:params>
     <jsp:param name="id" value="5" />
     <jsp:param name="name" value="guru" />
  </jsp:params>
</jsp:plugin>
</body>
</html>

öğrenci.java

package demotest; 

import java.io.Serializable;

public class Student implements Serializable {
	
	public String getName () { 
		return name; 
	}
	public void setName (String name) {
		this.name = name;
	}
	public int getId() { 
		return id; 
	} 
	public void setId (int id) { 
		this.id = id; 
	} 
	private String name = "null"; 
	private int id = 0;
	
}

Kodun açıklaması:

Action_jsp5.jsp

Kod Satırı 10: Burada jsp: eklenti nesnesini alıyoruz ve burada üç özelliği alıyoruz

  • Tür – bu durumda fasulyedir
  • Dosyanın kod adı
  • Codebase – paket adının bulunduğu yol

Kod Satırı 11-14: Burada altında name ve value niteliklerine sahip bir child param nesnesinin bulunduğu jsp: params nesnesini alıyoruz ve bu niteliklerde id ve name değerlerini ayarlıyoruz.

öğrenci.java

Kod 7-17: Kimlik ve isim değişkenleri için alıcılar ve ayarlayıcılar kullanıyoruz

Kod 19-20: id ve name değişkenlerini başlatıyoruz.

Burada parametrenin ayarlanan değerlerinin Öğrenci Bean'de kullanılması durumunda çıktı alacağız. Bu durumda, sadece param değerlerini ayarladığımız ve aldığımız ancak herhangi bir yere yazdırmadığımız için herhangi bir çıktı almayacağız.

jsp:gövde

  • Bu etiket XML'i dinamik olarak tanımlamak için kullanılır; Elements derleme zamanından ziyade istek süresinde üretilebilir.
  • Aslında dinamik olarak öğe gövdesi oluşturulan XML'i tanımlar.

Sözdizimi:

<jsp:body></jsp:body>

Burada bu tagların içerisine XML body tagını yazıyoruz.

jsp:özellik

  • Bu etiket XML'i dinamik olarak tanımlamak için kullanılır; yani öğeler derleme zamanından ziyade istek zamanında oluşturulabilir.
  • Aslında dinamik olarak oluşturulacak XML'in niteliğini tanımlar.

Sözdizimi:

<jsp:attribute></jsp:attribute>

Burada XML'in nitelik etiketini yazıyoruz.

Gövde ve nitelik örneği:

Action_jsp6.jsp

<%@ 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>Action Guru JSP6</title>
</head>
<body>
<jsp:element name="GuruXMLElement">
<jsp:attribute name="GuruXMLattribute">
Value
</jsp:attribute>
<jsp:body>Guru XML</jsp:body>
</jsp:element>
</body>
</html>

Kodun açıklaması:

Kod Satırı 10: Burada dinamik olarak oluşturulan elemanı tanımlıyoruz. XMLve adı GuruXMLElement olacaktır

Kod Satırı 11-13: Burada dinamik olarak oluşturulan XML'in XML özniteliğini oluşturacak bir öznitelik tanımlıyoruz.

Kod Satırı 14: Burada dinamik XML'de oluşturulacak XML gövdesini yazdığımız gövde eylemimiz var.

Yukarıdaki kodu çalıştırdığınızda aşağıdaki çıktıyı alırsınız:

jsp:özellik

Çıktı:

Burada oluşturulan XML'in gövde etiketinin çıktısını alıyoruz.

jsp:metin

  • JSP sayfalarındaki metni şablonlamak için kullanılır.
  • Gövdesi başka hiçbir öğe içermez ve yalnızca metin ve EL ifadelerini içerir.

Sözdizimi:

<jsp:text>template text</jsp:text>

Burada şablon metni yalnızca şablon metnine (jsp'de yazdırılması gereken herhangi bir genel metin olabilir) veya herhangi bir şablon metnine atıfta bulunur. EL ifadesi.

Örnek:

Action_jsp7.jsp

<%@ 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 Action JSP7</title>
</head>
<body>
<jsp:text>Guru Template Text</jsp:text>
</body>
</html>

Kodun açıklaması:

Kod Satırı 10: Burada şablon metnini yazdırmak için metin nesnesini alıyoruz

Yukarıdaki kodu çalıştırdığınızda aşağıdaki çıktıyı alırsınız

jsp:metin

Çıktı:

Metin eylem nesnelerinin içine yerleştirilen Guru Şablon Metnini alıyoruz.

jsp:çıkış

  • jsp'nin XML bildirimini veya DOCTYPE bildirimini belirtir.
  • XML bildirimi ve DOCTYPE çıktı tarafından bildirilir

Sözdizimi:

<jsp:output doctype-root-element="" doctype-system="">

Burada, doctype-root-element, DOCTYPE'daki XML belgesinin kök öğesini belirtir. Doctype-system, çıktıda oluşturulan ve sistem sabitini veren doctype'ı belirtir.

Ö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>Action Guru JSP8</title>
</head>
<body>
<jsp:output doctype-root-element="html PUBLIC" doctype-system="http://www.w3.org/TR/html4/loose.dtd"/>
</body>
</html>

Kodun açıklaması:

Kod Satırı 10: Burada bir DOCTYPE oluşturmak için çıktı eylemi nesnesini kullanıyoruz ve dahili olarak şu formatta oluşturulacak:

Bu dahili olarak üretileceğinden bunun için herhangi bir çıktı olmayacaktır.