Spring Javanın işletme katmanı olup işlerin yapılmasında işe yarayan bir framework’tür.Bu framework’e spring’in core yani çekirdek kısmı olarak bilinmektedir.
Nasıl Ortaya Çıktı
1998 ile 2000 yılları arasında kurumsal projeleri daha kolay geliştirmesi için ve yönetebilmesi için sun firmasının çok yatırım yapması sonuçunda istenilen sonucu alamadı.Fakat tecrübeli bir yazılımcı karsılasılan problemlere çözüm buluyor işleri kolaylaştırıyor.İşte bu yapı Spring’tir.
- Modern web(REST,AJAX,HTML5)
- Veritabanları DataAccess(NoSQL,MongoDB,Map Reduce,RDBMS,Cloud)
- Sosyal ağlara entegrasyon(Twitter,Facebook,Linkedin)
- Security(Authorization ve Authenticaion entegre edilmesi)
- Cloud Ready(Amazon EC2,Google App Engine,Cloud Foudry)
- Mobile(IOS,Android)
Spring’in developerlara sağlamış olduğu en önemli özelliklerinden birisi güvenliktir.Bir geliştiricinin olmassa olmazlarından birisidir.
Çekirdek Spring’in(Spring Core) İçerisinde Neler Vardır ?
- Core içinde loC Container (Kap)
- Resources(Kaynaklar)
- Validation(Doğrulama)
- Data Binding(Veri Bağlama)
- Type Conversion(Tip Dönüştürme)
- Spring Expression Language (SpEL-İfade Dili)
- AOP API’leri
- Test birimleri
Spring’in Özellikleri
Spring Framework’te yapıyı tamamen kullanmak zorunda değiliz.Yani işimize yarayanları kullanıp işimize yaramayanları ise kullanmaya biliriz.
Pojo sınıflarını MVC yapısına göre modele karşılık gelmektedir.
Interface’ler sayesinde esnek bağlar kurulur.
Spring’in güzel gelişmiş bir test yapısı vardır.
Spring uygulamanın tamamıyla kendi kodları işgal etmiyor.Yani bir projeden spring’i kolayca kaldırabiliriz.
Spring çok kolay bir şekilde konfigürasyon yapılır.Tasarım desenlerini kullanmaktadır.
Nesnelerin arası bağdaşımların yönetilmesi ve bu bağlaşımlarım kesilmesi
Uygulamanın güvenliğinin sağlanması
Dağıtık programlamaya imkan verilmesi
NOT:Bean nesnedir yani sınıftır.
Metad data bir bilginin başka bilgiyle tarif edilmesi denilebilir.
Çok önemli hususlardan birisi ise bir sınıf değişime kapalı gelisima açık olmalıdır.
DI(Dependency Injection) Yapmanın Kaç Yolu Vardır?
1-Constructor Injection
(Yapılandırıcı,Hızlandırıcı,Oluşturucu Enjection)
2-Setter Injection
(Ayarlayıcı Enjectionu)
3-Method Injection
(Sınıfa ait sıradan bir metot enjectionu)
Spring Geliştirme Araçı
Spirng’te geliştirme ortamı için kullanılan en iyi araç Sping’in kendi tool’u olan spring tool suite dir.