• Save
Yalova Üniversitesi - (JavaServer Pages) JSP
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Yalova Üniversitesi - (JavaServer Pages) JSP

on

  • 2,125 views

15 Mayıs 2013 tarihinde Yalova Üniversitesinde Java Web Teknolojileri Seminerine konuşmacı olarak katıldım ve (JavaServer Pages) JSP hakkında bir sunum yaptım.

15 Mayıs 2013 tarihinde Yalova Üniversitesinde Java Web Teknolojileri Seminerine konuşmacı olarak katıldım ve (JavaServer Pages) JSP hakkında bir sunum yaptım.

Statistics

Views

Total Views
2,125
Views on SlideShare
1,805
Embed Views
320

Actions

Likes
7
Downloads
0
Comments
1

4 Embeds 320

https://twitter.com 283
http://www.linkedin.com 20
http://turkeyjug.org 14
https://www.linkedin.com 3

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • SGSGD

Yalova Üniversitesi - (JavaServer Pages) JSP Presentation Transcript

  • 1. YALOVA ÜN VERS TESİ İ İBilgisayar Mühendisi Mimar ASLANwww.udemy.com/u/mimaraslanmimaraslan@gmail.com
  • 2. JSP ve nedir? Ve ne Değildir?JavaServer Pages (JSP) bir programlama dili değilidir.Java diline ait teknolojilerden bir tanesidir.JavaServer Pages sayfalarının dosya uzantısı .jsp’dir.JSP kurumsal dinamik web projelerinde kullanılmaktır.JSP, HTML kodlarının arasına yazılır ve server(sunucu) tarafındaki Javaclass(sınıf)ları ile birlikte çalışır.
  • 3. Neden JSP kullanmalıyım?JSP’nin temelinde JAVA dili vardır.JSP gücünü nesne yönelimli JAVA dilindenalmaktadır.JSP teknolojisi Java sofrasındakiherşeyden kolaylıkla yer içer.JSP geniş çaplı dinamik web projeleri içinaltyapı sunar.
  • 4. Java programlama dilini bu kadar önemli yapan şeylernelerdir?Günümüz teknolojilerinde pastanınen büyük dilinmini Java proglamadili almaktadır.Java en basit elektronik araçtantutunda Mars’taki uzay aracınakadar kullanılmaktadır.
  • 5. Kurumsal Java’da JSP’nin yeri ve önemi
  • 6. JSP’nin geliştirilmesinde hangi kurumlar rol aldılar?Java Servlet’in kullanımı web alında muhteşemdifakat programcıların Servletleri kodlamaları oldukçauzun zaman alıyordu. Sun Microsystems buduruma bir çare aradılar ve JavaServer Pages(JSP) betik dili doğdu.Apache Groupa JSP ve Java Servlet kodlarınınüzerinde çalışmaları için bu dev projeyi verdiler.Kısa bir zaman sonra Apache Groupta Tomcat adlıürünü piyasaya sürdü. Sonuçta meşhur ApachesTomcat ortaya çıktı.
  • 7. Web Server (Web Sunucusu)Web sunucuları farklı istemcilerden gönderilen isteklere cevaplarvermektedir.Günümüzde ücretli ve ücretsiz birçok web sunucusu bulunmaktadır.
  • 8. Application Server (Uygulama Sunucusu)Java kodlarının çalıştırılması demek uygulama demektir. Bu durumdaApplication Server(Uygulama Sunucusu)nda bir JSP sayfasının çalıştırılmasıda bir java uygulamasının çalışması demektir.JSP sayfaları sıradan WebServerlerde değil deApplication Server(UygulamaSunucusu)nda çalışırlar.JSP ile yazılan sayfalarısunucuda servletlere yani safjava kodlarına çevrilir.
  • 9. JSP ve Servlet ilişkisiServletler platformlardan-bağımsız %100 java modül(parça)larıdır.Html kodlarının arasına yazılan her JSP sayfası sunucuda servlete yani javakoduna çevrilir. Böylece her sayfanın servleti sunucuda oluşturuluyor.Servletler web serverlerin yeteneklerini ve yapabilecekleri işlerin kalitesiniarttırırlar.
  • 10. JSP ile Servletler birbirini tamamlayıcı iki teknolojidir.JSP ve Servlet ilişkisi
  • 11. JSP, Servletlerin devamı mıdır ?Servlet teknolojisinin web sayfalarında kullanımını kolaylaştırılması JSP ileolmuştur.Servletler üzerinden proje geliştirmek çok uzun zaman alıyordu ve çok tazahmetliydi.
  • 12. JSP ve Temel Tagları1- Declaration tag Bildiri etiketi <%! %>2- Expression tag İfade etiketi <%= %>3- Directive tag Emir etiketi <%@ directive … %>4- Scriptlet tag Kodlama etiketi <% ... %>5- Action tag Olay tagı
  • 13. Declaration tag- Bildiri etiketi<%!public int tarih = 1453 ;public String lider = "Fatih Sultan Mehmet Han" ;%>Değişkenleri ve metodları tanımlarken kullanılır.Başında ( ! ) ünlem vardır ve ifade sonunda ( ; ) noktalı virgül vardır.
  • 14. Expression tag - İfade etiketiJSP sayfalarında Java ifadelerini kullanırken gereklidir.Web sayfasına herhangi birşeyleri yazı olarak yazdırmakiçin kullanışlıdır.Başında ( = ) eşittir vardır ve ifade sonunda ( ; ) noktalıvirgül yoktur.Tarih : <%= new java.util.Date() %>
  • 15. Directive tag - Emir etiketi1.Page directive (Sayfa)JSP sayfasında işlenecek sınıfları ve bilgileri tanımlar.2.Include directive (Ekleme, dahil etme)Dışarıdan harici dosya, web sayfalarını ve kod parçalarını JSP sayfalarınaekler.• 3.Tag library directive (Etiket kütüphanesi)Özel etiket kütüphaneleri kullanır.<%@ page import = "java.util.*, java.sql.*" %><%@ include file = "haberler.jsp" %><%@ taglib uri = "tag library URI" prefix = "bubizimtagimizinonisimi" %><%@ taglib uri ="http://java.sun.com/jsp/jstl/core" prefix ="c" %>
  • 16. Scriptlet tag - Kodlama etiketiJava kodlarımızı yazarken işimize yarar.<%String sehirAdi = "İstanbul" ;out.println (sehirAdi) ;int fetihTarihi = 1453 ;out.println (fetihTarihi) ;%>
  • 17. Standard Tag Library (JSTL)•JSTL, JSP nin standart etiketarşividir.•Temel amacı java webuygulamalarını geliştirmeyi vekullanılabilirliği artırmaktır.•JSP scriptlets yani normal Javakodlarına göre JSTL kullanmanındaha kolaydır.
  • 18. Standard Tag Library (JSTL)JSP içinde Java kodlarınıbasitleştirmekdir.JSTL temelde sağladığıkolaylıklarıyla JSP nin ayrılmazbir parçasıdır.JSTL standardize edilmiştir.
  • 19. JSTL kullanmanın avantajları nedir?Scriptlets (JSP içinde Java kodları)ı karmaşıktırve muhafaza edilmesi son derece zordur.Scriptlets’in aksine JSTL nin JSP sayfasındanokunması ve bakımı kolaydır.JSTL nin etiketleri normal HTML etiketlerinebenzerdir. Scriptlets (JSP içinde Java kodları)yerine JSTL kullanırsak HTML programcılarıkolaylıkla JSP içinde neler olup bittiğinianlayabilir.JSTL de her etiketinin adı kendini açıklartarzdadır ve anlaşılmayı da kolaylaştırır.
  • 20. JSTL Türü Nelere destek verir? Prefix (Ön ek)CoreDeğişken desteği vardır.cAkış kontrolü vardır.URL yönetimi vardır.Çeşitli alt tagları vardır.FormatI18nYerel formatlar desteği vardır.fmtMesaj biçimlendirme desteği vardır.Sayı ve tarih biçimlendirme desteği vardır.FunctionsYardımcı fonksiyon koleksiyonları vardır.fnDizgi metinlerin kullanımına destek vardır.Database SQL desteği vardır.sqlXMLCore Tags desteği vardır.xAkış kontrolü vardır.Dönüşüm desteği vardır.JSTL Etiket Türleri
  • 21. JSTL Core TagsJSTL Türü Nelere destek verir? Tags(Etiketler)Prefix(Ön ek)CoreDeğişken desteği vardır.removesetcAkış kontrolü vardır.choosewhenotherwiseforEachforTokensifURL yönetimi vardır.importparamredirectparamurlparamÇeşitli alt tagları vardır.catchout<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
  • 22. JSTL Format TagsInternationalization Tags TablosuJSTL Türü Nelere destek verir? Tags(Etiketler) Prefix (Ön ek)FormatI18nYerel formatlar desteği vardır.setLocalerequestEncodingfmtMesaj biçimlendirme desteğivardır.bundlemessageparamsetBundleSayı ve tarih biçimlendirmedesteği vardır.formatNumberformatDateparseDateparseNumbersetTimeZonetimeZone<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
  • 23. JSTL Function Tags<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>JSTL Türü Nelere destek verir? Tags(Etiketler)Prefix(Önek)FunctionsYardımcı fonksiyonkoleksiyonları vardır.lengthfnDizgi metinlerinkullanımına destek vardır.toUpperCase, toLowerCasesubstring, substringAfter,substringBeforetrimreplaceindexOf,startsWith,endsWith,contains,containsIgnoreCasesplit,joinescapeXml
  • 24. JSTL SQL Tags<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %>JSTL Türü Nelere destek verir? Tags(Etiketler)Prefix (Önek)DatabaseSQL desteğivardır.setDataSourcequerydateParamparamtransactionupdatedateParamparamsql
  • 25. JSTL XML tags<%@ taglib uri="http://java.sun.com/jsp/jstl/xml" prefix="x" %>JSTL Türü Nelere destek verir? Tags(Etiketler)Prefix(Ön ek)XMLCore Tags desteğivardır.outparsesetxAkış kontrolü vardır.choosewhenotherwiseforEachifDönüşüm desteğivardır.transformparam
  • 26. JSTL nin eksiklikleri nelerdir?Scriptlets (JSP içinde Java kodları)ı dahaesnekliktir. JSP programcısına tam detaylıinceden inceye kontrolü ele almasına izinverir.JSTL’de perde arkasında olup bitenlerdenhaberdar olmak zorunda değiliz.JSTL deki bir çok özel her etiketin vazifesinegöre farklı amaçları vardır. Bu da JSTL yi iyibilmeyen HTML programcılarını yorabilir.
  • 27. JSTL Kullanım Örnekleri
  • 28. ornek1.jsp<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%><%@page contentType="text/html" pageEncoding="UTF-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"><title>JSTL c:out kullanımı</title></head><body><h1>JSTL c:out kullanımı</h1><c:out value="Güzel gören güzel düşünür." /><br><c:out value="Güzel düşünen, hayatından lezzet alır." /></body></html>
  • 29. <body><h1>JSTL c:set - c:remove ve c:out kullanımı</h1><c:set var="degisken"value="Güzel gören güzel düşünür.Güzel düşünen, hayatından lezzet alır." /><c:out value="${degisken}" /><hr><c:remove var="degisken" /><c:out value="${degisken}" /><c:out value="Mesajımız silinmiş." /></body>
  • 30. Operatör JSP sayfalarında kullanılan JSTL deki karşılığı> gt< lt>= ge<= le== eq!= ne&& and|| or! not‘’ empty/ div% mod
  • 31. <c:if test="${ KontrolEdilenDeger Opertörler Şartımız }">Testin sonucu ${KontrolEdilenDeger} olarak belirlendi.</c:if><body><h1>JSTL c:if kullanımı</h1><h2><c:if test="${param.gecerlilikdenetimi}">Geçerlilik gecerlilik denetimi : ${param.gecerlilikdenetimi}</c:if><br><c:if test="${param.adisoyadi != null}">Adı Soyadı null değilse? != null : ${param.adisoyadi}</c:if><br><c:if test="${param.puani >= 0 and param.puani <= 10}">0-10 üzerinden Puanı : ${param.puani}</c:if></h2></body>
  • 32. <c:url value="gonderilecekSayfaAdresi"var="gonderilecekParametreler" ><c:param name="parametreAdi1" value="parametreDegeri1"><c:param name="parametreAdi2" value="parametreDegeri2"><c:param name="parametreAdi3" value="parametreDegeri3"></c:url><c:forEach var="i" begin=" baslangicSayisi" end=" bitisSayisi" step=" artisMiktari"><c:choose><c:when test="şart"><c:out value="değer" /> Şarta göre verilen mesaj<br></c:when><c:otherwise><c:out value="bitisDeğeriAşılırsa" /> Varsayılan mesaj<br></c:otherwise></c:choose></c:forEach><body><h1>JSTL c:redirect kullanımı</h1><c:redirect url="ornek1.jsp" /></body>
  • 33. <body><h2>JSTL SQL Tagları ile MySQL Veritabanı Bağlantısı</h2><sql:query var="sorgu"dataSource="jdbc/JSPStandardTagLibraryProjesiDatasource">SELECT`musteri_bilgileri`.`musteri_id`,`musteri_bilgileri`.`musteri_no`,`musteri_bilgileri`.`musteri_adi`,`musteri_bilgileri`.`musteri_soyadi`,`musteri_bilgileri`.`musteri_meslegi`,`musteri_bilgileri`.`musteri_email`FROM `magazatakibi`.`musteri_bilgileri`;</sql:query>
  • 34. <table border="1"><!-- Kolonların Başlıkları --><tr><c:forEach var="kolonBasligi" items="${sorgu.columnNames}"><th><c:out value="${kolonBasligi}"/></th></c:forEach></tr><!-- Kolonların Bilgileri --><c:forEach var="satir" items="${sorgu.rowsByIndex}"><tr><c:forEach var="kolon" items="${satir}"><td><c:out value="${kolon}"/></td></c:forEach></tr></c:forEach></table></body>
  • 35. JSP Standard Tag Library Projesiweb5-JSTL XML tagsarabalar.xml<?xml version="1.0" encoding="UTF-8"?><arabalar><araba><marka>MERCEDES</marka><model>E-Serisi Sedan</model><renk>Gri</renk></araba><araba><marka>BMW</marka><model>6 Serisi Cabrio</model><renk>Siyah</renk></araba><araba><marka>ANADOL</marka><model>Otosan 500</model><renk>Beyaz</renk></araba><araba><marka>TOYOTA</marka><model>Corolla</model><renk>Mavi</renk></araba></arabalar>
  • 36. <h2>JSTL XML Tags Kullanımı</h2><c:import url="arabalar.xml" var="url" /><x:parse xml="${url}" var="XmlBelgesi" /><table border="1"><thead><tr><th><b>MARKASI</b></th><th><b>MODELİ</b></th><th><b>RENGİ</b></th></tr></thead><tbody><x:forEach var="otomobil" select="$XmlBelgesi/arabalar/araba"><tr><td><font color="red"><x:out select="$otomobil/marka"/></font></td><td><font color="red"><x:out select="$otomobil/model"/></font></td><td><font color="red"><x:out select="$otomobil/renk"/></font></td></tr></x:forEach></tbody></table>
  • 37. Yayınlanmış Kitaplarımwww.umuttepeyayinlari.com
  • 38. www.udemy.com/u/mimaraslanOnline Video Eğitimlerim
  • 39. Güzel gören güzel dü ünür.şGüzel dü ünen hayatından lezzet alır.şB.S.N.JSPseminerine katılıp beni sabırladinlediğiniz için sizlere çok teşekkür ederim.Bilgisayar Mühendisi Mimar ASLANwww.udemy.com/u/mimaraslanmimaraslan@gmail.com