JSP (Java Server Pages) Nedir
Web uygulamaları oluşturmak üzerine geliştirilmiş olan Java Server Pages yani JSP bir Java teknolojisidir. Bu teknoloji ile kolay bir şekilde dinamik web sayfaları oluşturabilirsiniz. Ülkemizde bu teknolojinin kullanımı az olsa da yabancı ülkelerde JSP’nin yeri ayrıdır. Aynı zamanda JSP Servlet teknolojisinin tüm özelliklerini kendisinde barındırmaktadır. Peki Servlet nedir? Bu sorunun yanıtını aşağıdan bulabilirsiniz.
Servlet Nedir?
Günümüzde büyük firmalar genellikle web üzerine program geliştirirken JSP ve JSF dillerinden faydalanmaktadır. Bu dillerde Servlet altyapısını kullanmaktadır. Servlet ise bir JAVA sınıfıdır. Bu sınıfı daha iyi anlayabilmeniz için sunucunun ne olduğunu bilmeniz gereklidir. Sunucu yani Server’ı kısaca açıklamak gerekirse istemci tarafından gelen istekleri cevaplamakla görevli fiziksel sunucu tanımı yapılabilir. Burada istemci bizler oluyoruz. Bu işlem içinde browser yani tarayıcıları kullanıyoruz. Servlet ise JSP veya JSF ile yazılan kodların binary kodlara dönüştürülmeden önceki halidir. Bu işlemden sonra da Servlet Motoruna istemler yapılmaktadır.
JSP ile Neler Yapılabilir?
CMS denilen web tabanlı içerik yöntem sistemleri oluşturulabilir.
Web tabanlı backend dilleri olan Php, Asp, Asp.net, Python ile yapılan blog, forum, uygulama tarzı programlar aynı şekilde JSP ile de yapılabilir.
Veritabanı ile bağlantılı uygulamalar yapılabilir.
Üyelik sistemi yapılabilir.
Session ve Cookie uygulamaları kullanılarak programlar geliştirilebilir.
JSP Kullanmanın Avantajları
JSP esnek bir yapıdadır.
JAVA’dan faydalandığı için JSP güçlü bir dildir.
Farklı platform ve ortamlarda etkin bir şekilde çalışır.
JDBC teknolojisini kullanılır.
Genişletilebilir bir yapıdadır.
JSP Örneği
<!doctype html>
<head>
<title>JSP Örneği</title>
<meta charset=”utf-8”>
</head>
<body>
<% out.print(“Merhaba Dünya”); %>
</body>
</html>
Yukarıdaki örnek de olduğu gibi html kodların içine Java tabanlı JSP kodlarımızı yazabildik. Dilin söz dizimin de gördüğünüz üzere JSP kodları <% %> etiketlerinin arasına yazılmaktadır. Sonunda ise birçok programlama dilinde olduğu gibi kodun sonuna “;” konulmaktadır.
JSP Mimarisi
Öncelikle HTML formunda gelen veriler JSP veya Servlet’e gider. Buradan JSP sayfası okunur ve database işlemleri yapılır. Alınan verilerin sonucunda JSP dosyasına bilgiler tekrardan döner. Son aşamasa ise JSP ile dönen veriler client’e yani istemciye sunulur. Kısaca açıklamak gerekirse JSP bundan ibarettir.
JSP Elemanları
<%@ page … %> : İşlem yapılan sayfaya birtakım özellikler tanımlamak üzere kullanılır. Sayfa da import işlemi yapmak buna örnek olarak gösterilebilir.
<%@ include … %> : Var olan sayfaya başka bir sayfa eklemek için bu işlem yapılmaktadır.
<% taglib … %> : Sayfada birtakım tag kütüphanesi tanımlamak üzere bu etiket kullanılır.
JSP Neden Geliştirilmiştir?
JSP’nin tabanı servlet teknolojisine dayandığını yukarıda belirtmiştik. Aynı şekilde Servlet’lerin sunucu yani server tarafında çalışan JAVA kodlarının olduğunu da söylemiştik. JSP teknolojisi ise servet teknolojisinden bir adım ileri giderek Html kodların arasına gömülebilen bir özelliğe sahip olmuştur. Yani bu özellikle JSP kodlarını Html sayfasında kullanılarak siteyi daha dinamik bir hale getirebilirsiniz.
JSP Gibi Backend Dilleri
Web uygulamaları geliştirmek isteyenler JSP teknolojisinin yanı sıra farklı programlama dillerini de kullanabilir. Php, Asp, Asp.net, Python ve Java bu dillerdendir. JSP ile yaptığınız uygulamaları bu diller vasıtasıyla kolay bir şekilde yapabilirsiniz. Bu seçenekler arasında yer alan Java dikkatinizi çekmiş olabilir. Bu diller arasında Java’nın yer almasının başlıca sebebi Java kullanılarak JSP teknolojisinin yanı sıra birçok teknolojiyle web uygulamaları yapılabilir.
JSP ve JSF Arasındaki Farklar
Java dilini kullanarak web uygulaması yapmanın birçok yöntemi vardır. Önceden bunun için Servetler kullanılıyordu. Fakat Html kodlarının içine Servtler yerleştirilemediğinden dolayı bu teknoloji biraz eksik kalıyordu. Sonrasında bu sorunu ortadan kaldırmak için JSP teknolojisi geliştirildi. Bu teknoloji ile artık dinamik olarak web siteleri oluşturulması kolaylaştı. Daha sonra Java Server Faces anlamına gelen JSF oluşturuldu. JSF bir MVC standardı olarak düşünülebilir. JSF ile artık objeler, görünümler, kontrol yapıları bölünebilir buda daha semantik kod yazılmasını sağlayacaktır. Sonuç itibariyle bir tablo oluşturduğunuzu farz edelim bunu JSF ile kullanarak hazır componentler yardımıyla yapabileceğiniz gibi JSP kullanarak HTML ve CSS kodları yazarak da bu işlemi gerçekleştirebilirsiniz. JSP ve JSF arasındaki farkı basit bir şekilde böyle örnekleyebiliriz.
ASP ve ASP.NET Arasındaki Farklar
net’de derlenmiş kodlar kullanılırken Asp’de yorumlayıcı yardımıyla birtakım kodlar yorumlanır.
Asp veritabanı bağlantısı için Ado teknolojisini kullanırken Asp.net Ado.net teknolojisini kullanmaktadır.
Asp ile Html ile birleşik kodlar yazılabilirken bu durum Asp.net’ de Html ve kod bölümlerinin dosyaların arasına yazılmasıyla yapılır.
net nesne yönelimliyken Asp kısmen nesne yönelimlidir.
Asp XML desteğine sahip değildir. Asp.net Asp’nin aksine XML desteğini kullanıcılarına sunmaktadır.
Asp ISS üzerinden çalışırken Asp.net .net Framework’ünü kullanılır.
Asp ile kodlama yapmak için VBScript diline ihtiyaç vardır fakat Asp.net kodları yazmak için C#, VB.net gibi seçenekler mevcuttur.
Asp dili ile Asp.net arasındaki en büyük fark Asp bir programlama diliyken Asp.net bir yazılım çatısıdır. Bunların dışındaki farkları zaten yukarıda belirttik. Asp ile Asp.net karıştırıldığı gibi JSP ile Asp’de birbiriyle karıştırılmaktadır. Bu karışıklığı aşağıdan gidebilirsiniz.
JSP ile ASP Arasındaki Farklar
Bir Microsoft teknolojisi olan ASP ile JSP benzer özellikler gösterse de ikisinin kendi içerisinde farklı yapıları ve özellikleri vardır. Bunları aşağıdan inceleyebilirsiniz.
Java Server Pages yani JSP’de web sunucu desteği apache, Netscape ve Microstof ISS’ken bu durum ASP’de ISS veya Personel Web Server’dir.
JSP JAVA desteklenen tüm platformlarda çalışmaktadır. ASP ise Windows altında tam desteklenmektedir.
Veritabanı erişimde JSP’de JDBC kullanılırken ASP’de veri objeleri kullanılmaktadır.
JSP güvenli Java güvenlik sistemi ile çalışırken Asp Windows NT güvenlik sistemi ile çalışmaktadır.
Sizlerde konuyla ilişkin kafanıza takılan soruları bizlere yorumlar kısmandan iletebilirsiniz. Böylelikle sorularınıza cevaplar bulabilirsiniz.