Spring Boot - Wprowadzenie
Spring Boot to platforma open source oparta na języku Java służąca do tworzenia mikroserwisów. Jest rozwijany przez Pivotal Team i służy do tworzenia samodzielnych i gotowych do produkcji aplikacji sprężynowych. W tym rozdziale znajdziesz wprowadzenie do Spring Boot i zapoznasz się z podstawowymi koncepcjami.
Co to jest usługa Micro?
Micro Service to architektura, która umożliwia programistom niezależne opracowywanie i wdrażanie usług. Każda uruchomiona usługa ma swój własny proces, dzięki czemu uzyskuje się lekki model do obsługi aplikacji biznesowych.
Zalety
Micro Services oferuje swoim programistom następujące korzyści -
- Łatwe wdrożenie
- Prosta skalowalność
- Kompatybilny z pojemnikami
- Minimalna konfiguracja
- Krótszy czas produkcji
Co to jest Spring Boot?
Spring Boot stanowi dobrą platformę dla programistów Java do tworzenia samodzielnych i produkcyjnych aplikacji wiosennych, które możesz just run. Możesz rozpocząć od minimalnych konfiguracji bez konieczności przeprowadzania całej konfiguracji Spring.
Zalety
Spring Boot oferuje swoim programistom następujące korzyści -
- Łatwe do zrozumienia i rozwijania aplikacji sprężynowych
- Zwiększa produktywność
- Skraca czas rozwoju
Cele
Spring Boot ma następujące cele -
- Aby uniknąć skomplikowanej konfiguracji XML w Spring
- Opracowanie gotowych do produkcji aplikacji Spring w łatwiejszy sposób
- Aby skrócić czas programowania i uruchomić aplikację niezależnie
- Oferuj łatwiejszy sposób rozpoczęcia korzystania z aplikacji
Dlaczego Spring Boot?
Możesz wybrać Spring Boot ze względu na funkcje i zalety, które oferuje, jak podano tutaj -
Zapewnia elastyczny sposób konfigurowania Java Beans, konfiguracji XML i transakcji w bazie danych.
Zapewnia wydajne przetwarzanie wsadowe i zarządza punktami końcowymi REST.
W Spring Boot wszystko jest automatycznie konfigurowane; nie są potrzebne żadne konfiguracje ręczne.
Oferuje aplikację sprężynową opartą na adnotacjach
Ułatwia zarządzanie zależnościami
Zawiera wbudowany kontener serwletów
Jak to działa?
Spring Boot automatycznie konfiguruje aplikację na podstawie zależności, które zostały dodane do projektu przy użyciu @EnableAutoConfigurationadnotacja. Na przykład, jeśli baza danych MySQL znajduje się na ścieżce klasy, ale nie skonfigurowałeś żadnego połączenia z bazą danych, Spring Boot automatycznie konfiguruje bazę danych w pamięci.
Punktem wejścia aplikacji rozruchu sprężynowego jest klasa zawiera @SpringBootApplication adnotacja i główna metoda.
Spring Boot automatycznie skanuje wszystkie komponenty zawarte w projekcie przy użyciu @ComponentScan adnotacja.
Spring Boot Starters
Zarządzanie zależnościami to trudne zadanie w przypadku dużych projektów. Spring Boot rozwiązuje ten problem, udostępniając zestaw zależności dla wygody programistów.
Na przykład, jeśli chcesz użyć Spring i JPA do dostępu do bazy danych, wystarczy, że włączysz spring-boot-starter-data-jpa zależność w projekcie.
Zauważ, że wszystkie startery Spring Boot mają ten sam wzór nazewnictwa spring-boot-starter- *, gdzie * oznacza, że jest to typ aplikacji.
Przykłady
Spójrz na poniższe startery Spring Boot wyjaśnione poniżej, aby lepiej zrozumieć -
Spring Boot Starter Actuator dependencysłuży do monitorowania aplikacji i zarządzania nią. Jego kod pokazano poniżej -
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
Spring Boot Starter Security dependencyjest używany dla Spring Security. Jego kod pokazano poniżej -
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
Spring Boot Starter web dependencysłuży do pisania Rest Endpoints. Jego kod pokazano poniżej -
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
Spring Boot Starter Thyme Leaf dependencysłuży do tworzenia aplikacji internetowych. Jego kod pokazano poniżej -
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
Spring Boot Starter Test dependencysłuży do pisania przypadków testowych. Jego kod pokazano poniżej -
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
Konfiguracja automatyczna
Spring Boot Auto Configuration automatycznie konfiguruje Twoją aplikację Spring w oparciu o zależności JAR dodane do projektu. Na przykład, jeśli baza danych MySQL znajduje się na ścieżce klasy, ale nie skonfigurowałeś żadnego połączenia z bazą danych, to Spring Boot automatycznie konfiguruje bazę danych w pamięci.
W tym celu musisz dodać @EnableAutoConfiguration adnotacja lub @SpringBootApplicationadnotacja do głównego pliku klasy. Następnie Twoja aplikacja Spring Boot zostanie automatycznie skonfigurowana.
Obserwuj następujący kod, aby lepiej zrozumieć -
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);
}
}
Aplikacja Spring Boot
Punktem wejścia aplikacji Spring Boot jest klasa zawiera @SpringBootApplicationadnotacja. Ta klasa powinna mieć główną metodę uruchamiania aplikacji Spring Boot.@SpringBootApplication adnotacja obejmuje automatyczną konfigurację, skanowanie składników i konfigurację rozruchu sprężynowego.
Jeśli dodałeś @SpringBootApplication adnotacji do zajęć, nie musisz dodawać @EnableAutoConfiguration, @ComponentScan i @SpringBootConfigurationadnotacja. Plik@SpringBootApplication adnotacja obejmuje wszystkie inne adnotacje.
Obserwuj następujący kod, aby lepiej zrozumieć -
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);
}
}
Skanowanie składników
Aplikacja Spring Boot skanuje wszystkie komponenty bean i deklaracje pakietów podczas inicjowania aplikacji. Musisz dodać@ComponentScan adnotacja do pliku klasy, aby przeskanować komponenty dodane w projekcie.
Obserwuj następujący kod, aby lepiej zrozumieć -
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);
}
}