Spring Boot - Einführung
Spring Boot ist ein Open Source Java-basiertes Framework, mit dem ein Mikrodienst erstellt wird. Es wurde vom Pivotal Team entwickelt und wird verwendet, um eigenständige und serienreife Federanwendungen zu erstellen. Dieses Kapitel gibt Ihnen eine Einführung in Spring Boot und macht Sie mit den grundlegenden Konzepten vertraut.
Was ist Micro Service?
Micro Service ist eine Architektur, mit der Entwickler Services unabhängig voneinander entwickeln und bereitstellen können. Jeder ausgeführte Dienst verfügt über einen eigenen Prozess. Dadurch wird das einfache Modell zur Unterstützung von Geschäftsanwendungen erreicht.
Vorteile
Micro Services bietet seinen Entwicklern folgende Vorteile:
- Einfache Bereitstellung
- Einfache Skalierbarkeit
- Kompatibel mit Containern
- Minimale Konfiguration
- Geringere Produktionszeit
Was ist Spring Boot?
Spring Boot bietet Java-Entwicklern eine gute Plattform, um eine eigenständige und produktionsfähige Spring-Anwendung zu entwickeln, die Sie können just run. Sie können mit minimalen Konfigurationen beginnen, ohne dass ein komplettes Spring-Konfigurationssetup erforderlich ist.
Vorteile
Spring Boot bietet seinen Entwicklern die folgenden Vorteile:
- Einfach zu verstehende und zu entwickelnde Federanwendungen
- Steigert die Produktivität
- Reduziert die Entwicklungszeit
Tore
Spring Boot wurde mit folgenden Zielen entwickelt:
- So vermeiden Sie komplexe XML-Konfigurationen im Frühjahr
- Einfachere Entwicklung produktionsbereiter Federanwendungen
- So reduzieren Sie die Entwicklungszeit und führen die Anwendung unabhängig aus
- Bieten Sie einen einfacheren Einstieg in die Anwendung
Warum Spring Boot?
Sie können Spring Boot aufgrund der hier angegebenen Funktionen und Vorteile auswählen -
Es bietet eine flexible Möglichkeit, Java Beans, XML-Konfigurationen und Datenbanktransaktionen zu konfigurieren.
Es bietet eine leistungsstarke Stapelverarbeitung und verwaltet REST-Endpunkte.
In Spring Boot wird alles automatisch konfiguriert. Es sind keine manuellen Konfigurationen erforderlich.
Es bietet eine annotationsbasierte Federanwendung
Erleichtert das Abhängigkeitsmanagement
Es enthält eingebetteten Servlet-Container
Wie funktioniert es?
Spring Boot konfiguriert Ihre Anwendung automatisch basierend auf den Abhängigkeiten, die Sie mithilfe von zum Projekt hinzugefügt haben @EnableAutoConfigurationAnmerkung. Wenn sich beispielsweise die MySQL-Datenbank in Ihrem Klassenpfad befindet, Sie jedoch keine Datenbankverbindung konfiguriert haben, konfiguriert Spring Boot automatisch eine speicherinterne Datenbank.
Der Einstiegspunkt der Spring Boot-Anwendung ist die Klasse, die sie enthält @SpringBootApplication Anmerkung und die Hauptmethode.
Spring Boot scannt automatisch alle im Projekt enthaltenen Komponenten mithilfe von @ComponentScan Anmerkung.
Spring Boot Starter
Die Handhabung des Abhängigkeitsmanagements ist eine schwierige Aufgabe für große Projekte. Spring Boot behebt dieses Problem, indem Entwickler eine Reihe von Abhängigkeiten bereitstellen.
Wenn Sie beispielsweise Spring und JPA für den Datenbankzugriff verwenden möchten, ist dies ausreichend, wenn Sie einschließen spring-boot-starter-data-jpa Abhängigkeit in Ihrem Projekt.
Beachten Sie, dass alle Spring Boot-Starter dem gleichen Namensmuster folgen spring-boot-starter- *, wobei * angibt, dass es sich um einen Anwendungstyp handelt.
Beispiele
Schauen Sie sich zum besseren Verständnis die folgenden Spring Boot-Starter an, die unten erläutert werden:
Spring Boot Starter Actuator dependencywird verwendet, um Ihre Anwendung zu überwachen und zu verwalten. Sein Code ist unten gezeigt -
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
Spring Boot Starter Security dependencywird für Spring Security verwendet. Sein Code ist unten gezeigt -
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
Spring Boot Starter web dependencywird verwendet, um Rest-Endpunkte zu schreiben. Sein Code ist unten gezeigt -
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
Spring Boot Starter Thyme Leaf dependencywird zum Erstellen einer Webanwendung verwendet. Sein Code ist unten gezeigt -
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
Spring Boot Starter Test dependencywird zum Schreiben von Testfällen verwendet. Sein Code ist unten gezeigt -
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
Automatische Konfiguration
Die automatische Spring Boot-Konfiguration konfiguriert Ihre Spring-Anwendung automatisch basierend auf den JAR-Abhängigkeiten, die Sie im Projekt hinzugefügt haben. Wenn sich beispielsweise die MySQL-Datenbank in Ihrem Klassenpfad befindet, Sie jedoch keine Datenbankverbindung konfiguriert haben, konfiguriert Spring Boot automatisch eine speicherinterne Datenbank.
Zu diesem Zweck müssen Sie hinzufügen @EnableAutoConfiguration Anmerkung oder @SpringBootApplicationAnmerkung zu Ihrer Hauptklassendatei. Anschließend wird Ihre Spring Boot-Anwendung automatisch konfiguriert.
Beachten Sie zum besseren Verständnis den folgenden Code:
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-Anwendung
Der Einstiegspunkt der Spring Boot-Anwendung ist die Klasse, die sie enthält @SpringBootApplicationAnmerkung. Diese Klasse sollte die Hauptmethode zum Ausführen der Spring Boot-Anwendung haben.@SpringBootApplication Die Annotation umfasst die automatische Konfiguration, den Komponentenscan und die Spring Boot-Konfiguration.
Wenn Sie hinzugefügt haben @SpringBootApplication Anmerkung zur Klasse, Sie müssen die nicht hinzufügen @EnableAutoConfiguration, @ComponentScan und @SpringBootConfigurationAnmerkung. Das@SpringBootApplication Annotation enthält alle anderen Annotationen.
Beachten Sie zum besseren Verständnis den folgenden Code:
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);
}
}
Komponentenscan
Die Spring Boot-Anwendung überprüft alle Beans und Paketdeklarationen, wenn die Anwendung initialisiert wird. Sie müssen das hinzufügen@ComponentScan Anmerkung für Ihre Klassendatei zum Scannen Ihrer in Ihrem Projekt hinzugefügten Komponenten.
Beachten Sie zum besseren Verständnis den folgenden Code:
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);
}
}