JSP de <%@ include file=”sayfa.jsp”%> yöntemi ile include ettiğiniz sayfalara include eden sayfadan parametre aktarmak isterseniz şunu yapabilirsiniz.
request nesnesine include eden sayfa da include edilen sayfa da erişebiliyor. Bu özellik sayesinde request.setAttribute(“degisken_adi”, “deger”); diyerek request içine include edilen sınıfta kullanmak istediğiniz değişkeni atabilirsiniz, yalnız burada ufak bir ayrıntı var request.setAttribute bir HashMap tipi nesneye ekleme yaptığı için primitive yani int, long vs saklayamazsınız bunu yerine böyle değişkenleri kapsayıcı nesneler içine alarak aktarın. mesela int aktaracaksanız request.setAttribute(“my_int”, new Integer(5));
include edilen sayfadan değişkeni alırken de DegiskenTipi degisken = (DegiskenTipi)request.getAttribute(“degisken_adi”); diyerek değeri okuyup include edilen sayfada kullanabilirsiniz.
Örnek :
Test.jsp
<html>
<head>
<%
request.setAttribute(“sonuc”, new Integer(5));
%>
</head>
<body>
<%@ include file=”show_result.jsp”%>
</body>
</html>
show_result.jsp
<%
Integer result = (Integer)request.getAttribute(“sonuc”);
out.write(String.valueOf(result.intValue()));
%>
