Spring Framework Eğitimi



Benzer belgeler
.com. Özcan Acar 2009 Kurumsal Java.com

Spring Framework Eğitimi

Spring Security Framework Harezmi Bilişim Çözümleri

19 Şubat 2016 Cuma

Spring Framework Eğitimi

2. Bölüm Spring İle Tanışalım

.com. Kurumsal Java. Özcan Acar com

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Facade (Cephe) Tasarım Şablonu KurumsalJava.com

/*Aşağıda ki kodları doğru şekilde anlar ve kullanırsanız java da sınıfları biraz da olsa anlamış olursunuz.*/

BMS-302 İleri Web Programlama. İş Parçacığı (Thread) ve Soket (Socket) Programlama

Intercepting Filter Tasarım Şablonu KurumsalJava.com

public static int Toplam int x, int y

Üst Düzey Programlama

Business Delegate Tasarım Şablonu KurumsalJava.com

JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ

abstract Sınıflar 1 Sınıf sınıf1 new class Ama aşağıdaki şekilde referans alınabilir;

Başlangıç seviyesinde Maven, JPA ve Spring Dökümanı

BİL-141 Bilgisayar Programlama I (Java)

Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism )

Paket Erişimleri. Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 1

Erişim konusunda iki taraf vardır:

Nesne tabanlı programlama nesneleri kullanan programlamayı içerir. Bir nesne farklı olarak tanımlanabilen gerçek dünyadaki bir varlıktır.

MAT214 BİLGİSAYAR PROGRAMLAMA II DERSİ Ders 8: Sınıf (Class) Yapılarına Giriş

Java ile Nesneye Yönelik Programlama (Object Oriented Programming)

Client Server Database

Chain of Responsibility Tasarım Şablonu KurumsalJava.com

Java C.Thomas Wu 2004b kitabından Türkçeleştirilerek ve örneklendirilerek hazırlanmıştır.

Java EE web uygulamaları geliştirmek için kullanılan açık kaynak web uygulama framework üdür.

Decorator Tasarım Şablonu

Spring için Acegi Güvenlik Sistemi. Hazırlayan : Akif Burak Tosun Hacettepe Universitesi İletişim: thunder_burak@hotmail.

7. HAFTA. Erişim Belirleyiciler

Liskov Substitution Principle (LSP) Liskov un Yerine Gecme Prensibi KurumsalJava.com

JavaServer Faces (JSF) Sunucu Yazılım Teknolojileri 2008

Örnek 1: Programı yazın ve çalıştırın.

Java Programlamaya Giriş

Lab7 DOĞU AKDENİZ ÜNİVERSİTESİ BİLGİSAYAR VE TEKNOLOJİ YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI. BTEP212 Java. Uygulama1: package javaapplication58;

MAT214 BİLGİSAYAR PROGRAMLAMA II DERSİ Ders 12: Grafik Kullanıcı Arayüzü (Graphical User Interface-GUI)

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

RSA ANAHTAR DAĞITIMI VE RSA İLE DİJİTAL İMZA OLUŞTURMA

JavaFX Temelleri (1)

Spring Application Framework e Giriş

Spring Application Framework Harezmi Bilişim Çözümleri

GÜZ DÖNEMİ AKT105 BİLGİSAYAR PROGRAMLAMA DERSİ 9. UYGULAMA

MVP, Observer ve Mediator Örüntüleri ile Yeniden Kullanılabilir Uygulama Bileşenleri Geliştirme

Arayüz soyut metotların oluşturduğu bir koleksyondur. Bir sınıf arayüzü çalıştırırken arayüzün sahip olduğu soyut metotları da miras alır.

Spring Framework. KurumsalJava.com KurumsalJavaAkademisi.com. Özcan Acar Bilgisayar Mühendisi

Üst Düzey Programlama

Basit bir web uygulaması

ECLIPSE PROGRAMININ ÇALIŞTIRILMASI

Java Class Yapısında Finalize Metotunun Kullanımı

Üst Düzey Programlama

3. Bölüm Soyut Sınıflar (Abstract Classes) Java ile Nesne Merkezli ve Fonksiyonel Programlama Akın Kaldıroğlu

MAT214 BİLGİSAYAR PROGRAMLAMA II DERSİ Ders 18: Formatlı Grafik Kullanıcı Arayüzü Oluşturma

Üst Düzey Programlama

BİL-141 Bilgisayar Programlama I (Java)

11- FONKSİYONLAR (FUNCTIONS)

Rahman USTA Editör Altuğ B. ALTINTAŞ Papatya Yayıncılık Eğitim

Java String İşlemleri

Üst Düzey Programlama

BMÜ-112 ALGORİTMA VE PROGRAMLAMA-II LABORATUARI DENEY-2 FÖYÜ


7.1- C#.net Giriş Çıkış İşlemleri ve Visual Studio. M.İLKUÇAR - 1

Klavyeden Basit Giriş/Çıkış İşlemleri

Öğr. Gör. Musa AYDIN Fatih Sultan Mehmet Vakıf Üniversitesi

ORM & Hibernate. Ahmet Demirelli. SCJP 5.0, SCWCD 1.4 ahmetdemirelli@sabanciuniv.edu

HSancak Nesne Tabanlı Programlama I Ders Notları

Haz. Yrd.Doç.Dr. Yunus Emre Selçuk

Java 2 Standart Edition SDK Kurulum ve Java ya Giriş

Üst Düzey Programlama

TÜRKİYE ELEKTRONİK FON ALIM SATIM PLATFORMU WEB SERVİS İŞLEMLERİ

BMÜ-111 ALGORİTMA VE PROGRAMLAMA AKIŞ KONTROLÜ YRD. DOÇ. DR. İLHAN AYDIN

DÖNGÜLER BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ LABORATUARI BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA DENEY-4 FÖYÜ GİRİŞ LABORATUARI.

Nesne Yönelimli Programlama

Programın Akışının Denetimi. Bir arada yürütülmesi istenen deyimleri içeren bir yapıdır. Söz dizimi şöyledir:

Programlama Dillerinde Kullanılan Veri Tipleri

GÜZ DÖNEMİ AKT105 BİLGİSAYAR PROGRAMLAMA DERSİ 4. UYGULAMA

JBoss Seam Next Generation Integration Framework

YZM311 YAZILIM YAPIMI BÖLÜM 4 TASARIM KALIPLARI. Yrd. Doç. Dr. Volkan TUNALI Mühendislik ve Doğa Bilimleri Fakültesi / Maltepe Üniversitesi

Front Controller Tasarım Şablonu KurumsalJava.com

Interface Comparator. Kılgılayan sınıf: Collator. Bildirimi: public interface Comparator

FINDIK Herkese Açık Filtre

Java da İstemci Tarafı Uygulamalar

MVC Kul anıcı Doğrulama ve Yetkilendirme MVC Filtreler Action Filter FilterAttribute IActionFilter FilterAttribute IActionFilter

PAKET ERİŞİMLERİ SINIFLARIN YENİDEN KULLANIMI. BMU-112 Algoritma ve Programlama-II Yrd. Doç.Dr. İlhan AYDIN

State Yönetimi. Bir web sayfası ile sunucu arasındaki etkileşim ;

1. Bölüm Spring'e Giriş

BIL101 07/11/2012 Lab5 Programlama Sorulari

Cahit GÜNGÖR Hacettepe Üniversitesi Bilişim Enstitüsü. Sorumluluk Zinciri. Kod Üretme (Code Generation)

DOKÜMANLARIN KONTROLÜ PROSEDÜRÜ Doküman No: Yürürlük Tarihi: Revizyon Tarih/No:

4.Hafta. this Anahtar Sözcüğü

Medula Eczane E-Reçete Web Servislerinin Kullanım Kılavuzu (Test amaçlıdır, ödemeye esas teşkil etmeyecektir)

Sınıflar ve Yapılar Arasındaki Farklılıklar. Değer ve Referans Türde Olan Aktarımlar

İçerik. Kapsülleme ( Encapsulation ) Java da Kalıtım: Örnek 2.1. Kalıtım ( Inheritance ) Tekrar Ziyaret. Java da Kalıtım: Örnek 2.2.

Kapsülleme ( Encapsulation ) BBS-515 Nesneye Yönelik Programlama

Görsel Programlama DERS 08. Görsel Programlama - Ders08/ 1

İş Parçacıkları Thread(s)

J A V A D A P R O G R A M D E N E T İ M İ V E O P E R A T Ö R L E R

Arasınav Örnek Soruları Bahar 2018

Transkript:

Hazırlayan: Barış Dere www.barisdere.com @BarisDere baris.dere@gmail.com Spring Framework Eğitimi Ders 3: Http://www.youtube.com/barisdere

Ders içeriği Scope nedir Singleton scope Prototype scope Web scopes (request, session, globalsession) Web scopes kullanımı

Scope nedir Her oluşturulan bean bir scope kullanır Kapsam, faaliyet ve kullanım alanını belirtir Aynı bean farklı scope kullanarak değişik şekilde hareket eder

Singleton scope Tüm bean ler standart olarak singleton scope kullanırlar Bean nesnesi sadece bir kere oluşturulur ve her sorgulamada bu nesne kullanılır

Singleton scope (2) Geleneksel Singleton tasarım kalıbından farklı Nesne classloader yerine container içerisinde oluşturulur

Singleton scope (3) <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <bean id="company" class="com.spring.training.company"></bean> </beans> public static void main(string[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("spring-config.xml"); } System.out.println(context.getBean("company", Company.class)); System.out.println(context.getBean("company", Company.class)); System.out.println(context.getBean("company", Company.class)); System.out.println(context.getBean("company", Company.class)); com.spring.training.company@a81b1fb com.spring.training.company@a81b1fb com.spring.training.company@a81b1fb com.spring.training.company@a81b1fb

Prototype scope Singleton scope tam tersi Bean nesnesi her sorgulamada oluşturulur ve ayni nesne kullanilmaz

Prototype scope (2) <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <bean id="company" class="com.spring.training.company" scope="prototype"></bean> </beans> public static void main(string[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("spring-config.xml"); } System.out.println(context.getBean("company", Company.class)); System.out.println(context.getBean("company", Company.class)); System.out.println(context.getBean("company", Company.class)); System.out.println(context.getBean("company", Company.class)); com.spring.training.company@580eac5a com.spring.training.company@2b5575e0 com.spring.training.company@77addb59 com.spring.training.company@371bed71

Prototype scope (3) Singleton bir bean içerisinde prototype olan başka bir bean varsa bu prototype singleton olur. Bean'ler container baslatılırken oluşturulur Method Injection veya kendimiz new XXX()

Web scopes Request, Session, Global Session Web için kullanılan ApplicationContext sınıflarıyla kullanılabilir (örnek; XmlWebApplicationContext) Aksi takdir de IllegalStateException hatası alırsınız

Web scopes (2) Servlet 2.4 ve daha yeni web container için <web-app> <listener> <listener-class> org.springframework.web.context.request.requestcontextlistener </listener-class> </listener> </web-app> Servlet 2.3 ve daha eski web container için <filter> <filter-name>requestcontextfilter</filter-name> <filter-class>org.springframework.web.filter.requestcontextfilter</filter-class> </filter> <filter-mapping> <filter-name>requestcontextfilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>

Request scope Her HTTP isteği için yeni bir bean yaratılır HTTP isteği sona erince bean yok edilir <beans> <bean id="company" class="com.spring.training.company" scope="request"/> </beans>

Request scope (2) <bean id="company" class="com.spring.training.company" scope="request"/> Web Container (1) www.barisdere.com/listele com.spring.training.company@2b5575e0 (2) www.barisdere.com/listele com.spring.training.company@77addb59

Session scope HTTP session başlamasıyla oluşturulur ve session süresince değişmez. HTTP session sona erince bean yok edilir <beans> <bean id="company" class="com.spring.training.company" scope="session"/> </beans>

Session scope (2) <bean id="company" class="com.spring.training.company" scope="session"/> Web Container (1) www.barisdere.com/listele com.spring.training.company@2b5575e0 (2) www.barisdere.com/listele com.spring.training.company@2b5575e0

Global session scope Sadece Portlet uygulamaları için kullanılır Portlet'lerin birbirleriyle bilgi paylaşımını sağlıyor Web uygulamaları için kullanıldığı taktirde session scope görevi görür <beans> <bean id="company" class="com.spring.training.company" scope="globalsession"/> </beans>

Web scope kullanımı Web scope içeren her bean aop scoped proxy kullanmalıdır <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/xmlschemainstance" xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemalocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd"> <bean id="company" class="com.spring.training.company" scope="request"> <aop:scoped-proxy /> </bean> <bean id="customer" class="com.spring.training.customer"> <property name="company" ref="company" /> </bean> </beans>

Ders notları Presentasyon dosyalarını download etmek için: www.barisdere.com Tüm videolar için: http://www.youtube.com/barisdere Takip etmek için: @BarisDere Bana ulaşmak için: baris.dere@gmail.com