JSP ‘de XML Veri Gösterimi
Java Server Pages Ders‘leri devam ediyor. Şimdiye kadar JSP (Java Server Pages) hakkında bir bilginiz yok ise buradan fikir sahibi olabilirsiniz.
Web projelerimizde “veriler” yer alır. Veriler belirli bir yerde saklanır bu veriler nerede saklanırsa saklansın bizim ona ulaşmamız gerekiyorsa muhakkak almayılız.
Daha önceki derslerde verilerimizi bir veri tabanından alarak işlemler yapmıştık. (1,2)
KISACA XML
Bu sefer verilerimizi XML’den alcağız ve Java Server Pages sayfamızda listeyeleceğiz, görünteleyeceğiz. XML’den kısaca bahsedelim ki neyle uğraştığımızı bilelim. XML denilen teknoloji tarayıcı ile server arasında verileri taşıyan aracı bir sistem diyebiliriz. XML server yükünü azaltır. Belirli bir formatı vardır. Bu formata göre XML’ “parse” ederek verilerin bir bölümünü ya da hepsini kullanabiliriz, gösterebiliriz.
UYGULAMA
Elimizde bir XML dosyası olduğunuz varsayalım. Bu XML dosyasından verileri çekmemiz gerekiyor ve bu çekilen verileri JSP sayfamızda göstereceğiz.
1) XML SAYFASI OLUŞTURMA
<uyelist> <uye> <ad>Burak</ad> <soyad>Kutbay</soyad> <yas>24<yas> </uye> <uye> <ad>Karub</ad> <soyad>Yatba</soyad> <yas>26<yas> </uye> </uyelist>
2) JAVA SERVER PAGES SAYFASI
<%@ page contentType="text/html"%> <%@ page import="javax.xml.parsers.DocumentBuilderFactory, javax.xml.parsers.DocumentBuilder,org.w3c.dom.*" %> <% DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); DocumentBuilder db = dbf.newDocumentBuilder(); Document doc = db.parse("http://localhost:8080/uye.xml"); NodeList nodel= doc.getElementsByTagName("ad"); NodeList node2= doc.getElementsByTagName("soyad"); NodeList node3= doc.getElementsByTagName("yas"); %> <html> <body><center> <table> <tr> <td font-weight:bold;">ADI</td> <td font-weight:bold;">SOYADI</td> <td font-weight:bold;">YASI</td> </tr> <tr> <% for(int i=0;i<2;i++) { %> <td><%= nodel.item(i).getFirstChild().getNodeValue() %></td> <td><%= node2.item(i).getFirstChild().getNodeValue() %></td> <td><%= nnode3.item(i).getFirstChild().getNodeValue() %></td> </tr> <% } %> </table> </center> </body> </html>
3) NELER YAPTIK?
Bu kodları satır satır açıklayalım.
2-3. satırlarda XML verilerini okumak ve bulunduğu konumdan programımızın içine göndermek için gerekli kütüphaneleri Jsp sayfamıza ekledik.
6-7. satırlarda ise gerekli kütüphanelerden nesne türetiyoruz. XML dökümanını açmak ve okumak için o nesnenin yetenekleri kullanmamız için gerekli kod bloğu.
8. satırda XML dosyamızın yolunu JSP sayfamıza söylüyorüz.
10-12 satırlar arası ise XML başlıklarını gerekli NodeList değişkenlerine atıyoruz. Nodelist bir “array” diyebiliriz.
27-29 satırlarda bir döngü ile Nodelist’te ki XML verilerini bir tablo halinde gösteriyoruz.
Bu kodları yazıp çalıştırdığımızda neden hata veriyor acaba
Ne hatası vermekte. Hatayı paylaşırsanız yardımcı olabilirim.