JSP Eylem Etiketleri

⚡ Akıllı Özet

JSP Eylem Etiketleri, servlet motorunun davranışını kontrol etmek için XML sözdizimini kullanır ve geliştiricilerin dosyaları dahil etmelerini, istekleri iletmelerini ve bunlarla çalışmalarını sağlar. JavaBeans'i kullanarak istek işleme sırasında dinamik içerik yerleştirin.

  • ???? ️ Standart Set: On bir standart eylem etiketi, include'ları, forward'ları, beans'leri, plugin'leri ve XML çıktısını ele alır.
  • 📜 XML Sözdizimi: Eylem etiketleri katı XML biçimine uyar ve her istekte yeniden değerlendirilir.
  • 🔗 Bean Entegrasyonu: jsp:useBean, jsp:setProperty ve jsp:getProperty yönetimini sağlar. JavaFasulye yaşam döngüsü ve özellikleri.
  • ✅ Sayfa Akışı: jsp:include kaynakları birleştirir; jsp:forward istek işlemeyi başka bir sayfaya aktarır.
  • 🧪 Dinamik XML: jsp:body, jsp:attribute, jsp:text ve jsp:output, XML yapılarını dinamik olarak oluşturur.
  • 🤖 Yapay Zeka Modernizasyonu: Yapay zekâ asistanları, eski JSP eylem kodlarını modern çerçevelere dönüştürmeye yardımcı olur.

JSP Eylem Etiketleri

JSP Eylem Etiketi nedir?

JSP Eylem Etiketleri, servlet motorunun davranışını kontrol etmek için XML sözdizimi yapılarını kullanır. Geliştiriciler dinamik olarak dosya ekleyebilir, yeniden kullanabilir. JavaBean bileşenleri, kullanıcıyı başka bir sayfaya yönlendirir ve include ve forward gibi JSP Eylem Etiketleri aracılığıyla benzer çalışma zamanı işlemlerini gerçekleştirir. Yönergelerin aksine, eylem etiketleri sayfaya her erişildiğinde yeniden değerlendirilir; bu da onları istek işleme sırasında dinamik davranış için ideal hale getirir.

Sözdizimi:

<jsp:action_name attribute="value" />

Bu JSP Standart Eylem Etiketleri eğitiminde, her bir eylem etiketinin nasıl çalıştığını, ne işe yaradığını ve gerçek bir JSP dosyasında nasıl uygulanacağını öğreneceksiniz.

JSP'de Sık Kullanılan Eylem Etiketleri Listesi

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

Eylem Etiketi Adı Sözdizimi Açıklama
jsp:useBean JSP sayfasında bean'leri çağırmak ve kullanmak için kullanılır.
jsp:dahil et <jsp:include page=”page URL” flush="true/false" /> İ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.

Artık tam listeye sahip olduğunuza göre, bu JSP Eylem Etiketlerinin her birini sözdizimi ve çalışan bir örnekle tek tek inceleyeceğiz.

jsp:useBean Eylem Etiketi

  • Bu işlem adı, kullanmak istediğinizde kullanılır. JavaJSP sayfasındaki bean'ler.
  • Bu etiket sayesinde bir bean'i kolayca çağırabilir ve sunucu tarafındaki bileşenleri yeniden kullanabilirsiniz.

jsp:useBean sözdizimi:

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

Burada `id`, bu bean'in tanımlayıcısını belirtirken, `class` ise bean 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ı:

Code Çizgi 10: Yukarıdaki kodda, bean'in "bean kimliğini" ve "sınıf yolunu" kullanıyorsunuz.

jsp:include Eylem Etiketi

  • jsp:include, istek işleme sırasında bir JSP dosyasını başka bir dosyaya eklemek için kullanılır, tıpkı include komutu gibi. talimatlar.
  • Bu, istek işleme aşamasında eklenir; yani, sayfa her istendiğinde dahil edilen içerik değerlendirilir.

jsp:include sözdizimi:

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

Örnek:

Action_jsp2'de (Code 10. satırda, date.jsp dosyasını dahil ediyoruz.

<%@ 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

Code Çizgi 10: İlk dosyada, date.jsp dosyasını action_jsp2.jsp dosyasına dahil ediyoruz.

Date.jsp:

Code Çizgi 11: Date.jsp dosyasındaki 11. satırda bugünün tarihini yazdırıyoruz.

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

jsp:dahil et

Çıktı:

  • Ana JSP sayfasında tarih dosyası bulunduğu için bugünün tarihini ve saatini görüntüler.

jsp:setProperty Eylem Etiketi

  • JSP'deki bu standart işlem, bean'in özelliğini ayarlamak için kullanılır.
  • Özelliği ayarlamadan önce bir bean tanımlamanız gerekiyor.

Sözdizimi:

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

Burada, `name` özelliği ayarlanacak olan bean'i tanımlar ve `property` ise ayarlamak istediğiniz özelliği belirtir. Ayrıca `value` ve `param` özniteliklerini de ayarlayabilirsiniz. Burada `value` zorunlu değildir ve özelliğe atanacak değeri tanımlar. Burada `param`, değerin alınabileceği istek parametresinin adıdır. `setProperty` örneği, `getProperty` ile birlikte aşağıda gösterilecektir.

jsp:getProperty Eylem Etiketi

  • Bu işlem, bean'in özelliğini elde etmek için kullanılır.
  • Özelliği bir metin dizisine dönüştürür ve son olarak çıktıya ekler.

Sözdizimi:

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

Burada, "name" özelliği alınacak olan bean'i temsil eder ve bean tanımlanmalıdır. "property" özniteliği ise alınacak bean ö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:

Code Hat 5TestBean, Serializable sınıfını uygulayan bir bean sınıfıdır. Kodda getter ve setter metotları bulunan bir sınıftır.

Code Hat 7Burada özel dize değişkeni msg'yi "null" olarak alıyoruz.

Code Satır 9-14Burada "msg" değişkeninin getter ve setter'larını kullanıyoruz.

Action_jsp3.jsp

Code Çizgi 10: Burada, bu JSP sınıfında kullanılacak olan bean'i (TestBean) belirten "useBean" etiketini kullanıyoruz.

Code Çizgi 11: Burada TestBean bean'inin msg özelliğinin değerini " olarak ayarlıyoruz."Guru"Eğitim"

Code Çizgi 12: Burada, getProperty kullanarak TestBean bean'inin msg özelliğinin değerini alıyoruz.Guru(Eğitim videosu), çıktıda gösterilmektedir.

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

jsp:getProperty

Çıktı:

Bu örnekte, TestBean kullanarak, setProperty ile "msg" özelliğini ayarlıyoruz ve getProperty ile özelliğin değerini " olarak alıyoruz.Guru"Eğitim"

jsp:forward Eylem Etiketi

`jsp:forward` eylem etiketi, isteği başka bir JSP sayfasına veya herhangi bir statik sayfaya yönlendirmek 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

Code Çizgi 10: Burada, isteği belirtilen sayfaya, yani jsp_action_42.jsp'ye yönlendirmek için forward JSP eylemini kullanıyoruz.

Jsp_action_42.jsp

Code Çizgi 10: action_jsp41.jsp'yi çağırdığımızda, istek bu sayfaya yönlendirilir ve "Yönlendirmeden sonraki sayfa bu" şeklinde bir çıktı alırız.

Yukarıdaki kodu çalıştırdığımızda aşağıdaki çıktıyı elde ederiz.

jsp:ileri

Çıktı:

action_jsp41.jsp'yi çağırıyoruz, ancak istek jsp_action_42.jsp'ye yönlendiriliyor ve bu sayfadan "Yönlendirmeden sonraki sayfa" şeklinde bir çıktı alıyoruz.

jsp:plugin Eylem Etiketi

  • Tanıtmak için kullanılır Java JSP'ye bileşenler, burada Java Bileşenler bir applet veya bir bean olabilir.
  • Tarayıcıyı algılar ve ekler. veya Etiketleri dosyaya ekleyin.

Sözdizimi:

<jsp:plugin type="applet/bean" code="objectcode" codebase="objectcodebase">
  • Burada tür, bir nesneyi veya bir bean'i belirtir.
  • Code Uygulama veya bean'in sınıf adını belirtir.
  • Codetaban, tabanı içerir. URL İçinde sınıflara ait dosyaları barındıran bir yapı.

jsp:param Eylem Etiketi

  • 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

Code Çizgi 10: Burada üç öznitelik alan jsp:plugin nesnesini kullanıyoruz.

  • Tür – bu durumda fasulye.
  • Code – Dosyanın adı.
  • Codebase – paket adını içeren yol.

Code 11-14 satır: Burada, içinde name ve value özniteliklerine sahip bir child param nesnesi bulunan jsp:params nesnesini alıyoruz ve bu özniteliklere id ve name değerlerini atıyoruz.

öğrenci.java

Code 7-17: id ve name değişkenleri için getter ve setter metotlarını kullanıyoruz.

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

Burada, parametrenin ayarlanmış değerleri Student bean'inde kullanıldığında çıktı alacağız. Bu durumda, parametrenin değerlerini yalnızca ayarlayıp aldığımız için herhangi bir çıktı almayacağız, hiçbir yere yazdırmayacağız.

jsp:body Eylem Etiketi

  • Bu etiket, XML'i dinamik olarak tanımlamak için kullanılır; burada Elements Bu, derleme zamanı yerine istek zamanında oluşturulabilir.
  • Bu, dinamik olarak oluşturulan XML'i bir öğe gövdesi olarak tanımlar.

Sözdizimi:

<jsp:body></jsp:body>

Burada XML gövde etiketini bu etiketlerin içine yazıyoruz.

jsp:öznitelik Eylem Etiketi

  • Bu etiket, XML'i dinamik olarak tanımlamak için kullanılır; bu sayede öğeler derleme zamanı yerine istek zamanında oluşturulabilir.
  • Dinamik olarak oluşturulacak XML'in özniteliğini tanımlar.

Sözdizimi:

<jsp:attribute></jsp:attribute>

Burada XML'in öznitelik 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ı:

Code Çizgi 10: Burada dinamik olarak oluşturulan bir öğeyi tanımlıyoruz. XMLve adı şu olacak: GuruXMLElement.

Code 11-13 satır: Burada, dinamik olarak oluşturulan XML'in bir XML özniteliği olacak bir öznitelik tanımlıyoruz.

Code Çizgi 14: Burada, dinamik olarak oluşturulacak XML gövdesini yazdığımız "body" eylemi yer alıyor.

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 body etiketinden gelen çıktıyı alıyoruz.

jsp:text Eylem Etiketi

  • Bu, JSP sayfalarına şablon metni eklemek 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 metni (JSP'de yazdırılması gereken herhangi bir genel metin olabilir) veya herhangi bir 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ı:

Code Çizgi 10: Burada, şablon metni yazdırmak için metin nesnesini kullanıyoruz.

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

jsp:metin

Çıktı:

Başlıyoruz Guru Şablon Metni, metin eylem nesnesinin içine yerleştirilir.

jsp:çıktı Eylem Etiketi

  • Bu, JSP'nin XML bildirimini veya DOCTYPE bildirimini belirtir.
  • XML bildirimi ve DOCTYPE, çıktı tarafından tanımlanır.

Sözdizimi:

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

Burada, doctype-root-element, DOCTYPE'taki XML belgesinin kök öğesini belirtir. Doctype-system ise çıktıda oluşturulan ve sistem değişmez değeri 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ı:

Code Çizgi 10: Burada, bir DOCTYPE oluşturmak için çıktı eylem nesnesini kullanıyoruz ve bu, dahili olarak şu formatta oluşturulacaktır:

Bu işlem dahili olarak üretileceği için görünür bir çıktı olmayacaktır.

SSS

JSP Eylem Etiketleri, istek işleme sırasında servlet motorunun davranışını kontrol eden XML tarzı öğelerdir. Geliştiricilerin dosya eklemesine, istekleri yönlendirmesine ve kullanmasına olanak tanır. JavaJSP sayfası içinde Bean'ler kullanın, applet'leri yerleştirin ve dinamik olarak XML çıktısı oluşturun.

Yönergeler sayfa çevirisi sırasında bir kez işlenir ve genel sayfa yapısını etkiler. Eylem Etiketleri her istekte yeniden değerlendirilir; bu da onları içerik ekleme, istekleri yönlendirme ve çalışma gibi dinamik davranışlar için uygun hale getirir. JavaÇalışma zamanındaki Beans.

Başlıklar veya altbilgiler gibi başka bir sayfadaki içeriği geçerli yanıta dahil etmeniz gerektiğinde `jsp:include` kullanın. Kontrolün tamamen başka bir kaynağa devredilmesi ve geçerli sayfanın başka bir çıktı üretmemesi gerektiğinde `jsp:forward` kullanın.

jsp:useBean bir nesneyi başlatır veya bulur. JavaBelirli bir kapsamdaki bean'ler. `jsp:setProperty` bir bean özelliğine değer atar ve `jsp:getProperty` özelliğin değerini okuyup yanıt içinde bir dize olarak yazar; bu da sunum ve bean mantığı arasında temiz bir ayrım sağlar.

`jsp:body` ve `jsp:attribute` dinamik XML öğe gövdelerini ve özniteliklerini tanımlar. `jsp:text`, değişmez şablon metni ve EL ifadeleri yazar ve `jsp:output`, JSP yanıtını oluşturduğunda üretilen XML bildirimini veya DOCTYPE'ı kontrol eder.

Yapay zekâ, REST çağrılarıyla API modellerine, yerleşik sohbet asistanlarına ve JSP sayfalarında görüntülenen öneri araçlarına entegre edilerek JSP ve JEE uygulamalarına dahil edilir. Yapay zekâ ayrıca, geliştirme sırasında JSP için hazır kodlar oluşturmaya, eylem etiketi kullanımını önermeye ve bean bağlantılarını doğrulamaya yardımcı olur.

Evet. Yapay zeka destekli araçlar, eski JSP kodunu analiz eder, eylem etiketi kalıplarını belirler ve Spring MVC, Thymeleaf veya REST gibi modern çerçevelere ve tek sayfa uygulamasına yönelik yeniden düzenlemeler önerir. Ayrıca geçiş testleri, bağımlılık raporları ve adım adım yeniden düzenleme planları da oluştururlar.

Bu yazıyı şu şekilde özetleyin: