5 Dakika veya Daha Kısa Sürede Açıklanan Spring Framework

Yayınlanan: 2022-12-28

Spring Framework, sağlam, yüksek performanslı uygulamalar oluşturmayı kolaylaştıran güçlü bir açık kaynaklı Java uygulama geliştirme çerçevesidir.

Açık kaynak, kaynak kodu ücretsiz olarak mevcut olduğu için insanların erişebileceği, değiştirebileceği ve özgürce paylaşabileceği bir şeyi ifade eder.

Açık kaynaklı bir uygulama çerçevesi, bir grup yazılım geliştiricisi tarafından oluşturulan bir yazılım geliştirme şablonudur. Kullanıcı arayüzleri, web siteleri ve temel yazılım uygulamaları oluşturmak gibi farklı amaçlar için kullanılan farklı şablon türleri vardır.

Uygulama geliştirmede yeniyseniz, Spring Framework'e başlamak sizin için harika bir başlangıç ​​olabilir. Bu yazıda, ne olduğunu ve nasıl kullanılacağını öğreneceksiniz.

Yay Çerçevesi nedir?

Yay Çerçevesi Nedir?

Spring Framework, geliştiricilerin kurumsal Java uygulamaları oluşturmak için kullandıkları açık kaynaklı bir çerçevedir. Bu çerçeve Rod Johnson tarafından oluşturuldu ve 2003 yılında Apache 2.0 lisansı altında piyasaya sürüldü.

Bazı programcılar genellikle Java'yı kötüler ve temel uygulamalar yaratmanın külfetli olduğunu iddia eder. Spring Framework, kurumsal Java uygulamaları geliştirmenin hantal ve karmaşık sürecini basitleştirmeyi amaçlar.

Bahar geniş. Bu nedenle, Spring Boot, Spring GraphQL ve Spring Cloud gibi diğer Spring tabanlı projeleri kullanmaya başlamadan önce Spring çerçevesinin ne olduğunu anlamanız önerilir.

Neden Spring Framework kullanıyorsunuz?

  • esnek Bu çerçeve, Görünüş odaklı programlama (AOP), Bağımlılık enjeksiyonu (DI) ve Düz Eski Java Nesnesi (POJO) gibi teknolojiler sunar. Böylece Spring'i farklı hedeflere ulaşmak için kullanabilirsiniz.
  • Bahar hızlıdır . Tüm bu teknolojilere sahip olmasına rağmen, Spring Framework hala hafiftir ve ölçeklenebilir ve sağlam kurumsal web uygulamaları oluşturmak için idealdir.
  • Harika topluluk . Spring'in çok çeşitli bir topluluğu vardır ve ihtiyaç duyduğunuz saatte çeşitli çözümlerle yardımcı olacağına güvenebilirsiniz.
  • Güvenli . Spring, güvenlik önlemleriyle tanınır ve güvenlik açıkları her zaman sık yamalarla giderilir. Güvenlik açıklarının temel süreci etkilememesini sağlamak için üçüncü taraf bağımlılıkları her zaman izlenir.
  • üretken Spring Framework, Java kurumsal uygulamaları geliştirme deneyimini kolaylaştırır.

Yay Özellikleri

Boy yönelimli programlamayı destekler

En boy yönelimli programlama, kesişen endişelere daha fazla modülerlik sağlar. AOP ayrıca Nesne yönelimli programlamayı da tamamlar.

AOP'deki ana modülerlik birimi, kesişen bir endişedir (Aspect). Geliştiriciler böylece bildirime dayalı kurumsal hizmetler ve özel yönler oluşturabilir.

Kontrolün Ters Çevrilmesi (IoC) Konteyneri

IoC kapsayıcısı, Java nesnelerini yönetmenin ve yapılandırmanın kolaylaştırılmış bir yolunu sunar. Tanımlanmış bir Java nesnesinin yaşam döngüsü, Spring tabanlı bir uygulamanın yeniden yapılandırılabilirliğini önemli ölçüde artıran bu kapsayıcı tarafından yönetilir.

Kontrolün Ters Çevrilmesi, nesne referans çalışma zamanı sunmak için bağımlılık arama veya bağımlılık enjeksiyon kalıplarını kullanır. IoC kapsayıcısı, yapılandırma yönetimi için gereken derleyici koduyla birlikte gelir.

Veri erişim çerçevesi

Spring, Java'daki en popüler veri erişim çerçevelerinden bazıları olan Hibernate, JDBC ve Java Persistence API (JPA) için doğrudan desteğe sahip olduğundan, veri iletişim süreci basitleştirilmiştir. Desteklenen tüm veri erişim çerçeveleri için kaynak sarma, özel durum işleme ve kaynak yönetimi gibi özellikler sunmak için bu çerçeveye güvenebilirsiniz.

Bahar MVC Çerçevesi

Geliştiriciler, ihtiyaçlarına uygun özelleştirilmiş MVC uygulamaları oluşturmak için bu istek tabanlı çerçeveyi kullanabilir.

Kullanıcıların isteklerini işlemek ve ardından bunları doğru denetleyiciye iletmekle görevli DispatcherServlet sınıfı, Spring MVC'nin merkezinde yer alır. Denetleyici böylece bir talebi işleyebilir, bir model oluşturabilir ve belirli bir görünüm aracılığıyla son kullanıcıya bilgi sunabilir.

Birkaç test çerçevesine sahiptir

Spring tabanlı uygulamalarınızı Mock nesneleri, TestContext çerçevesi veya Spring MVC Testi aracılığıyla geliştirirken test edebilirsiniz.

Dil desteği

Yay çerçevesi, Groovy ve Kotlin'i destekler.

bahar mimarisi

Spring Framework, yaklaşık 20 modülle birlikte gelir. Bu çerçevenin iyi yanı, kullanım durumunuza uygun modülleri seçmenize izin vermesidir. Bu modüller Çekirdek Konteyner, AOP (Aspect Oriented Programming), Veri Erişimi/Entegrasyonu, Web, Enstrümantasyon ve Test olarak gruplandırılmıştır.

1 numara. Çekirdek Konteyner

Spring Framework'ün Çekirdek Kabı, Çekirdek, Fasulye, Bağlam ve İfade Dili modellerini içerir. Bu dil modelleri aşağıdaki şekillerde yararlıdır;

  • Core modülü, çerçevenin temel parçasıdır. Çekirdekte IoC ve Dependency Injection özelliklerini bulacaksınız.
  • Bean modülü, fabrika modelinin sofistike bir uygulaması olan BeanFactory ile tanınır.
  • Bağlam modülü, Çekirdek ve Fasulye Modülleri üzerine inşa edilmiştir. Bu modül, özelliklerini Bean modülünden alır ancak uluslararasılaştırma için destek ekler.
  • İfade Dili modülü, çalışma zamanında bir nesne grafiğini işlemek ve sorgulamak için güçlü bir ifade dili sunar.

2 numara. Veri Erişimi/Entegrasyonu

JDBC, ORM, OXM, JMS ve Transaction modülleri, Veri Erişimi/Entegrasyon katmanını oluşturur. Bu modüller;

  • JDBC modülü, can sıkıcı JDBC kodlaması yapma ve ayrıca veritabanı satıcısına özgü hata kodlarını ayrıştırma ihtiyacını ortadan kaldıran bir JBDC soyutlama katmanına sahiptir.
  • ORM , JPA, JDO, Hibernate ve iBatis gibi bazı popüler nesne-ilişkisel eşleme API'leri için bir entegrasyon katmanıdır. '
  • OXM modülü, XStream, JAXB, JiBX, Castor ve XMLBeans için Nesne/XML eşleme uygulamalarını destekleyen bir soyutlama katmanıdır.
  • İşlem modülü, özel arabirimler uygulayan sınıflar için bildirime dayalı ve programatik işlem yönetimini destekler.
  • Java Messaging Service (JMS) modülü, mesaj üreten ve tüketen özelliklere sahiptir.

#3. AOP (Aspect Odaklı Programlama) ve Enstrümantasyon

Bu modül, yöntem yakalayıcılar gibi şeyleri tanımlamayı kolaylaştıran AOP Alliance uyumlu en-boy yönelimli programlama uygulamasıyla birlikte gelir. Enstrümantasyon modülü ise belirli uygulama sunucularında kullanılmak üzere sınıf yükleyici ve sınıf enstrümantasyon desteği sunar.

#4.

Web, Web-Servlet, Web-Struts ve Web-Portlet modülleri Web katmanını oluşturur.

  • Web modülü, çok parçalı dosya yükleme işlevi gibi temel web odaklı entegrasyon özelliklerinden sorumludur.
  • Web-Servlet modülü, web uygulamaları için Spring'in MVC uygulamasını içerir.
  • Web-Portlet modülü, Web-Servlet modülünün işlevselliğini yansıtır. Web-Portlet modülü, bir portlet ortamında kullanılmak üzere MVC uygulamasını sunar.
  • Web-Socket modülü, web uygulamalarında sunucu ve istemci arasında çift yönlü iletişimi destekler.

# 5. Ölçek

Test modülü, Spring mimarisinin son bölümüdür. Spring bileşenlerinin TestNG veya JUnit ile test edilmesini destekleyen modüldür.

Spring Framework'ü yükleyin

Java'nın kurulu olup olmadığını kontrol edin

Spring Framework'ün nasıl çalıştığını öğrenmeden önce, PC'mize Spring'i kurmalıyız. Spring belgeleri, işletim sisteminize bağlı olarak nasıl başlayacağınız konusunda kapsamlı kaynaklara sahiptir.

Bizim durumumuz için Linux tabanlı bir işletim sistemi olan Ubuntu 20.04.5 kullanacağız.

Spring'i kurmadan önce, bu komutu kullanarak Java'nın kurulu olduğundan emin olun.

 java -version

Java kuruluysa, bu ekran görüntüsüne benzer bir çıktınız olacaktır.

Bilgisayarınızda yoksa, ihtiyaçlarınıza göre Java'yı yüklemek için çeşitli yaklaşımlar vardır.

Spring çerçevesini yükleyin

Spring belgelerinde vurgulandığı gibi, Spring çerçevesini kurmak için birkaç yaklaşım vardır.

Bizim durumumuz için GVM'yi (Groovy Environment Manager) kullanacağız. GVMtool'u kullanarak GVM'yi edinebilir veya komut satırına kurabilirsiniz.

GVM'ye sahip olduğunuzda, Spring çerçevesinin kurulu olup olmadığını kurmak ve kontrol etmek için aşağıdaki komutları kullanın.

 gvm install springboot
 spring --version

Spring kuruluysa, buna benzeyen bir çıktı almanız muhtemeldir.

Spring çerçevesiyle ilgili önemli terimler

Bağımlılık Enjeksiyonu

Dependency Injection, geliştiricilerin sınıf dışında bağımsız nesneler oluşturmasına olanak sağlayan bir özelliktir. DI, kullanıcıların bu nesneleri bir sınıfa farklı şekillerde sağlamasına da olanak tanır.

Kontrolün Ters Çevirilmesi (IoC)

IoC, bir programın veya nesnelerin bölümlerinin kontrolünü bir çerçeveye veya kaba aktaran bir kavramdır. Geleneksel programlamada, özel kodumuz bir kitaplığa çağrı yapar. Öte yandan, IoC bir çerçevenin (bu durumda Bahar) özel kodumuza çağrı yapmasına ve programın akışını kontrol etmesine izin verir.

Görünüş Odaklı Programlama (AOP)

AOP, tüm uygulamada uygulanabilecek ortak ve yeniden kullanılabilir rutinler oluşturmaya yönelik bir tekniktir. Bu tür bir yaklaşım, tekrarlanabilir görevleri (girdi doğrulama, günlük kaydı ve hata işleme gibi) temel uygulama mantığından ayırır.

Spring Framework Öğrenme Kaynakları

1 numara. Spring Framework 5 ile Reaktif Programlama

Spring-Framework-5 ile Reaktif-Programlama

Bu Bahar kursu videolar, makaleler ve indirilebilir kaynaklardan oluşur. Kurs, Java ile işlevsel programlamayı, Spring WebFlux ile mikro hizmetlerin nasıl yapılacağını ve Spring Data MongoDB'de Reaktif türlerden nasıl yararlanılacağını öğretir.

2 numara. Bahar Çerçevesi Ana Sınıfı

Spring-Framework-Master-Class

Spring Framework Master Class, Java projelerinin Spring Framework kullandığı gerçek yolu öğreten ücretli bir kurstur. Spring Boot, JUnit & Mockito, Spring JDBC, Spring AOP ve Hibernate gibi çeşitli araçları nasıl kullanacağınızı öğreneceksiniz.

#3. Kolay Adımlarda Yay Çerçevesi

Spring-Framework-In-Kolay-Adımlarda

Spring Framework In Easy Steps, Spring Framework kullanarak Uçtan Uca Java EE Web Uygulamaları oluşturmak istiyorsanız almak için ideal bir premium kurstur. Öğreneceğiniz şeylerden bazıları, Spring MVC kullanarak web uygulamalarının nasıl geliştirileceği, JQuery ve Spring MVC Kullanılarak Ajax Çağrısının nasıl yapılacağı ve veritabanı işlemlerini gerçekleştirmek için Spring JDBC'nin nasıl kullanılacağıdır.

#4. Yay Çerçevesi 5

Spring-Framework-5

Spring Framework 5, Spring Data MongoDB, Spring Boot 2, Spring MVC, Spring Data JPA ve Hibernate'i öğrenmek istiyorsanız Spring Framework 5 kursu idealdir. 57 saatlik isteğe bağlı videolar, 13 makale ve birçok indirilebilir materyale güvenebilirsiniz.

Yazarın notu

Java, modern dünyanın en popüler programlama dillerinden biri olmaya devam ediyor. Yeni diller tanıtılsa da, Spring gibi çerçeveler Java'ya yeni bir hayat getiriyor ve kullanışlılığını genişletiyor. Bu nedenle, eski kodu sürdürmeleri ve ayrıca yeni uygulamalar oluşturmaları gerektiğinden, Java mühendislerine olan talebimizin devam etmesi muhtemeldir.

Çözüm

Spring, Java EE çerçeveleri arasında üst sıralarda yer almaktadır ve umarız Spring Framework'ün ne olduğunu, özelliklerini, mimarisini ve çalışma sürecini artık anlamışsınızdır. Spring Framework, diğer Spring projeleriyle birleştirildiğinde, geliştiricilere farklı geliştirme ortamlarında kullanılabilecek çeşitli geliştirme araçları sunar.