Spring Boot - Giriş

Spring Boot, bir mikro Hizmet oluşturmak için kullanılan açık kaynaklı bir Java tabanlı çerçevedir. Pivotal Team tarafından geliştirilmiştir ve bağımsız ve üretime hazır yay uygulamaları oluşturmak için kullanılır. Bu bölüm size Spring Boot'a bir giriş yapacak ve temel kavramlarını size tanıtacaktır.

Mikro Servis nedir?

Mikro Servis, geliştiricilerin hizmetleri bağımsız olarak geliştirmelerine ve dağıtmalarına izin veren bir mimaridir. Çalışan her hizmetin kendi süreci vardır ve bu, iş uygulamalarını desteklemek için hafif modele ulaşır.

Avantajlar

Mikro hizmetler, geliştiricilerine aşağıdaki avantajları sunar -

  • Kolay dağıtım
  • Basit ölçeklenebilirlik
  • Konteynerlerle Uyumlu
  • Minimum yapılandırma
  • Daha az üretim süresi

Spring Boot nedir?

Spring Boot, Java geliştiricilerinin yapabileceğiniz bağımsız ve üretim seviyesinde bir yay uygulaması geliştirmeleri için iyi bir platform sağlar. just run. Tüm bir Spring konfigürasyon kurulumuna ihtiyaç duymadan minimum konfigürasyonlarla başlayabilirsiniz.

Avantajlar

Spring Boot, geliştiricilerine aşağıdaki avantajları sunar:

  • Yay uygulamalarını anlamak ve geliştirmek kolaydır
  • Üretkenliği artırır
  • Geliştirme süresini kısaltır

Hedefler

Spring Boot, aşağıdaki hedeflerle tasarlanmıştır:

  • Spring'de karmaşık XML yapılandırmasından kaçınmak için
  • Üretime hazır bir Yay uygulamalarını daha kolay bir şekilde geliştirmek
  • Geliştirme süresini azaltmak ve uygulamayı bağımsız olarak çalıştırmak için
  • Uygulamaya başlamanın daha kolay bir yolunu sunun

Neden Spring Boot?

Spring Boot'u burada verildiği gibi sunduğu özellikler ve avantajlardan dolayı seçebilirsiniz -

  • Java Fasulye, XML yapılandırmaları ve Veritabanı İşlemlerini yapılandırmak için esnek bir yol sağlar.

  • Güçlü bir toplu işlem sağlar ve REST uç noktalarını yönetir.

  • Spring Boot'da her şey otomatik olarak yapılandırılır; manuel konfigürasyona gerek yoktur.

  • Açıklama tabanlı yay uygulaması sunar

  • Bağımlılık yönetimini kolaylaştırır

  • Gömülü Servlet Konteyneri içerir

O nasıl çalışır?

Spring Boot, uygulamanızı kullanarak projeye eklediğiniz bağımlılıklara göre otomatik olarak yapılandırır. @EnableAutoConfigurationek açıklama. Örneğin, MySQL veritabanı sınıf yolunuzdaysa, ancak herhangi bir veritabanı bağlantısı yapılandırmadıysanız, Spring Boot bir bellek içi veritabanını otomatik olarak yapılandırır.

Spring boot uygulamasının giriş noktası, sınıfın içerdiği @SpringBootApplication ek açıklama ve ana yöntem.

Spring Boot, projeye dahil olan tüm bileşenleri kullanarak otomatik olarak tarar. @ComponentScan ek açıklama.

Spring Boot Başlangıçları

Bağımlılık yönetimini ele almak, büyük projeler için zor bir görevdir. Spring Boot, geliştiricilerin rahatlığı için bir dizi bağımlılık sağlayarak bu sorunu çözer.

Örneğin, veritabanı erişimi için Spring ve JPA kullanmak istiyorsanız, eklemeniz yeterlidir spring-boot-starter-data-jpa projenizde bağımlılık.

Tüm Spring Boot başlangıçlarının aynı adlandırma modelini takip ettiğini unutmayın. spring-boot-starter- *, * bunun bir uygulama türü olduğunu belirtir.

Örnekler

Daha iyi bir anlayış için aşağıda açıklanan Spring Boot başlangıçlarına bakın -

Spring Boot Starter Actuator dependencyuygulamanızı izlemek ve yönetmek için kullanılır. Kodu aşağıda gösterilmiştir -

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

Spring Boot Starter Security dependencySpring Security için kullanılır. Kodu aşağıda gösterilmiştir -

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-security</artifactId>
</dependency>

Spring Boot Starter web dependencyRest Endpoints yazmak için kullanılır. Kodu aşağıda gösterilmiştir -

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-web</artifactId>
</dependency>

Spring Boot Starter Thyme Leaf dependencybir web uygulaması oluşturmak için kullanılır. Kodu aşağıda gösterilmiştir -

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

Spring Boot Starter Test dependencyTest senaryolarını yazmak için kullanılır. Kodu aşağıda gösterilmiştir -

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-test</artifactId>
</dependency>

Otomatik Yapılandırma

Spring Boot Otomatik Yapılandırması, projeye eklediğiniz JAR bağımlılıklarına göre Spring uygulamanızı otomatik olarak yapılandırır. Örneğin, MySQL veritabanı sınıf yolunuzdaysa, ancak herhangi bir veritabanı bağlantısı yapılandırmadıysanız, Spring Boot bir bellek içi veritabanını otomatik olarak yapılandırır.

Bu amaçla eklemeniz gerekir @EnableAutoConfiguration ek açıklama veya @SpringBootApplicationana sınıf dosyanıza ek açıklama. Ardından Spring Boot uygulamanız otomatik olarak yapılandırılacaktır.

Daha iyi anlamak için aşağıdaki kodu inceleyin -

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;

@EnableAutoConfiguration
public class DemoApplication {
   public static void main(String[] args) {
      SpringApplication.run(DemoApplication.class, args);
   }
}

Spring Boot Uygulaması

Spring Boot Uygulamasının giriş noktası, sınıfın içerdiği @SpringBootApplicationek açıklama. Bu sınıf, Spring Boot uygulamasını çalıştırmak için ana yönteme sahip olmalıdır.@SpringBootApplication ek açıklama Otomatik Yapılandırma, Bileşen Taraması ve Yay Önyükleme Yapılandırmasını içerir.

Eklediyseniz @SpringBootApplication sınıfa ek açıklama eklemeniz gerekmez. @EnableAutoConfiguration, @ComponentScan ve @SpringBootConfigurationek açıklama. @SpringBootApplication açıklama diğer tüm açıklamaları içerir.

Daha iyi anlamak için aşağıdaki kodu inceleyin -

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class DemoApplication {
   public static void main(String[] args) {
      SpringApplication.run(DemoApplication.class, args);
   }
}

Bileşen Taraması

Spring Boot uygulaması, uygulama başladığında tüm fasulye ve paket bildirimlerini tarar. Eklemeniz gerekir@ComponentScan projenize eklenen bileşenlerinizi taramak için sınıf dosyanız için ek açıklama.

Daha iyi anlamak için aşağıdaki kodu inceleyin -

import org.springframework.boot.SpringApplication;
import org.springframework.context.annotation.ComponentScan;

@ComponentScan
public class DemoApplication {
   public static void main(String[] args) {
      SpringApplication.run(DemoApplication.class, args);
   }
}