Spring controller katmanından HashMap aracılığıyla ekranda göstermek istediğimiz verileri map’e atarken liste verip de daha sonra JSP sayfasında bu listenin size(boyut/büyüklük)’ını bastırmaya kalktınızsa eğer mutlaka hata almışsınızdır.
Controller’dan gelen şöyle bir map’imiz olsun;
|
1 2 3 4 |
Map map = new HashMap();
List ornekListe = null;
ornekListe = ornekDAO.getOrnekListe(arg1, arg2, ...);
map.put("listem", ornekListe); |
yukarıda controller’da tanımladığımız listeyi JSP içinde;
|
1 |
Liste boyutu: <c:out value="${listem.size}" /> |
dersek, böyle bir attribute olmadığında dair hata alırız. Bu listenin boyutuna iki şekilde ulaşıp ekrana bastırabiliriz.
- map içine listenin boyutunu ekleriz. Bunun çok doğru bir çözüm olduğunu düşünmüyorum!(?)
- yöntem ise direkt JSP içerisinde JSTL taglerini kullanarak bu işi halledebiliriz. Nasıl mı? Cevap aşağıda;
Öncelikle JSP sayfamızın tepesine ilgili JSTL tagini kullanabilmek için ilgili taglibi ekliyoruz;
|
1 |
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> |
Bundan sonraki aşama ise;
|
1 |
Liste boyutu : <c:out value="${fn:length(listem)}" /> |
diyerek listemizin boyutuna ulaşmış oluyoruz.
Happy coding :p
Bu arada kendime yeni bir laptop alayım dedim, bir anda MacBook Pro alırken gördüm kendimi