Bu makalemizde JSP’de include işlemini inceleyeceğiz.
PHP’de de birçok noktada kurtarıcı modunda olan include, Java’da da oldukça kullanışlı bir işlemdir.
Include ile bir JSP içerisine başka bir JSP dosyasını alabilmemizi sağlamaktadır. Bu tanımlama, daha önce JSP ya da PHP ile uğraşmayan arkadaşlar için biraz ilginç gelebilir. Örneğin bir sayfayı tek bir dosya halinde değil de parçalı olarak tutmak istersek bize çok büyük kolaylıklar sağlamaktadır. Tasarımsal basit bir örnek ile belirtmek istersek :
Örneğin sayfamız şekildeki gibi 5 parçadan oluşsun.
- Gri alan banner ve ana başlıkların bulunduğu bölüm
- Sarı alan, kategorilerin bulunduğu bölüm
- Kırmızı alan, anket, duyuru vb. bulunduğu bölüm
- Turuncu alan, haberlerin bulunduğu bölüm
- Beyaz alan ise sayfayla ilgili özet bilginin bulunduğu bölüm
olsun. Bunların her birini her durumda birer div içine almak ve bu divleri hizalandırmak zorundayız. Peki bu divlerin içeriğini bu sayfada mı doldurmak zorundayız? Hayır.
JSP’nin include özelliği bize bu kolaylığı sağlamaktadır. Yukarıda saydığımız 5 ayrı bölüm için 5 farklı JSP oluşturup, bunları hazırladığımız tasarım şablonuna include ederek kodlarımızın okunabilirliğini ve denetlenebilirliğini artırabiliriz.
Bu işlemi daha basit bir örnekle ele alacacak olursak, index.jsp sayfamız bizim erişeceğimiz sayfamız olsun. Bu sayfa içerisine sayfa.jsp isimli sayfayı include edelim. Bu işlem için birden fazla yöntem bulunmaktadır. Bunların bir bölümünü inceleyelim.
Eğer sayfaya parametre göndermiyorsak, aşağıdaki 2 şekilde de include işlemini gerçekleştirebiliriz.
<%@ include file="sayfa.jsp" %>
|
<jsp:include page="sayfa.jsp"/>
|
Sayfaya parametre göndermemiz gerekiyorsa aşağıdaki şekilde include işlemini gerçekleştirebiliriz.
<jsp:include page="sayfa2.jsp">
<jsp:param name="id" value="1" />
</jsp:include>
|
Şimdi bu kodları kullandığımız index.jsp , sayfa.jsp ve sayfa2.jsp dosyalarının içlerine bakalım.
index.jsp
<body>
<%@ include file="sayfa.jsp" %>
<br/>
<jsp:include page="sayfa.jsp"/>
<br/>
<jsp:include page="sayfa2.jsp">
<jsp:param name="id" value="1" />
</jsp:include>
</body>
|
sayfa.jsp
<body>
<b>Veysel Ugur KIZMAZ</b>
</body>
|
sayfa2.jsp
<body>
<%
String queryString = request.getParameter("id");
out.print(queryString);
%>
</body>
|
sayfa2.jsp’de de gördüğümüz gibi querystring ile gönderilen parametreleri Java’da request.getParemeter(“”) methodu ile alabiliyoruz.
index.jsp’yi çalıştırdığımızda aşağıdaki ekran karşımıza gelecektir.
JSP ile ilgili dikkat etmemiz gereken bir nokta ise Case-Sensitive olması. Yani büyük-küçük harfin önemli olması. Örneğin tarayıcıma localhost:8089/MakaleWeb/index.jsp yerine localhost:8089/MakaleWeb/indeX.jsp yazarsak aşağıdaki hata ekranını alacağız.
Veysel Uğur KIZMAZ
Bilgisayar Mühendisi