Die Anleitung zum Spring Boot für den Anfänger

1- Was ist Spring Boot?

Spring Boot ist ein Projekt in der Ebene  IO Execution (die Implementierungsebene) von  Spring IO Framework.

Spring Boot ist ein fortgeschrittener Schritt von Spring damit Spring die Applikation einfacher erstellen und entwickeln. Mit  Spring Boot minimieren die Konfiguration von Spring. Spring Boot unterstützt den eingebetteten Container (embedded containers). Das genehmigt den Websiteapplikation ohne die Entwicklung auf die Web Server unabhängig zu laufen.

Sie können spring boot benutzen um die Java Web Applikation durch die command line command line 'java -jar' zu erstellen oder ein File war zur Entwicklung auf den Web Server zu exportieren. Spring Boot bietet Ihnen ein "CLI Tool" um die Spring Skripts (spring scripts).zu laufen
Spring Boot kann durch das folgende Beispiel einfach erläutern

Oben sind die Vorteile vom Spring Boot:

  1. Es ist sehr leicht, die Applikation nach der Spring mit Java oder Groovy zu entwickeln.
  2. Es reduziert die Entwicklungszeit und  erhöht die Produktivität
  3. Es vermeidet, viele boilerplate Code, Annotations und die XML Konfigurations zu schreiebn.
  4. Es ist Ihnen leicht, die Interaktion zwischen die Applikation von Spring Boot mit dem Ökosystem von Spring wie Spring JDBC, Spring ORM, Spring Data, Spring Security etc zu schaffen
  5. Durch den Zugang “standardmäßige Konfigurationsgrundsatz” kann es die Zeit und Leistung zur Applikationsentwicklung reduzieren.
  6. Es bietet Embedded HTTP servers wie Tomcat, Jetty .... um die Website Applikation einfach und schnell zu entwickeln und prüfen (test)
  7. Es bietet die Tool von Command Line Interface umd die Applikation von Spring Boot(Java oder Groovy) aus den Befehl (command prompt) einfach und schnell zu entwickeln und prüfen.
  8. Es bietet viele Plugin um die Applikation von Spring Boot durch die Verwendung der Build-tool wie Maven und Gradle sehr schnell zu entwickeln und prüfen
  9. Es bietet viele Plugin zum einfachen Umgang mit den eingebetteten Containers und der in-memory Databases

2- Das Ziel des Unterlagen

This post is based on:
  • Eclipse 4.7 (Oxygen)

  • Spring Boot 2.x

Im Dokument erstelle ich eine Applikation von Hello Spring Boot, Das ist eine einfache Website Applikation mit der Verwendung vom Spring Boot, und laufe die Applikation unabhängig ohne die Entwicklung auf dem Web Server.

Spring Tool Suite (STS)

Um die Applikation vom Spring Boot auf die IDE Eclipse aufzubauen, sollen Sie Spring Tool Suite installieren,. Das ist ein ausgeweitertes Plugin, das bei der Programmierung von Spring auf die Eclipse unterstützt.

Wenn Sie es noch nicht installiert haben, sollen Sie die Hinweise hier lernen

3- Das Spring Boot Projekt erstellen

Auf die Eclipse erstellen Sie ein Projekt mit der Verwendung vom Spring Tool Suite (STS):
  • File/New/Other...
  • Name: HelloSpringBoot
  • Group: org.o7planning
  • Artifact: HelloSpringBoot
  • Package: org.o7planning.hellospringboot
Das Project wird erstellt. Das ist unten die standardmäßige Struktur vom Projekt 

4- Einige Erklärungen über Spring Boot

In den oben Schritt haben Sie ein Spring Boot Project erstellt, Sehen Sie bitte die Inhalt von der File pom.xml:

pom.xml

Es gibt 3 bemerkenwerte Punkt in pom.xml (1),(2), (3) wie das folgende Beispiel .  Spring Boot hilft Ihnen bei der Vereinfachung von der Anmeldung der Spring Bibliothek

spring-boot-starter-parent

spring-boot-starter-parent ist ein vorhandenes Projekt im Spring Boot. Die grundsätzlichen abhängigen Bibliothek werden in spring-boot-starter-parent angemeldet. Ihr Projekt erbt es nur. Melden Sie nur <parent> in die File pom.xml von Ihrem Projekt an
** spring-boot-starter-parent **
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-parent -->

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.0.M6</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>
Sie können die standardmäßige Abhängigkeiten vom Spring Boot überschreiben. Das Thema wird klarer hier erwähnen
  • TODO

spring-boot-starter-web

Der anderen  "Starter" bieten Ihnen bei der Entwicklung einer bestimmten Typ der Applikation die notwendigen Abhängigkeiten. Zum Beispiel wenn Sie eine Website Applikation entwickeln, brauchen Sie eine Abhängigkeit s pring-boot-starter-web.
<dependencies>

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

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

</dependencies>

spring-boot-maven-plugin

Spring-boot-maven-plugin ist ein Plugin zur Angebot der notwendigen Bibliothek, die Ihrem Projekt bei dem direkten Laufen ohne die Entwicklung auf einem Web Server helfen. Es hilft bei der Erstellung einer durchführbaren File Jar (Executable)
<plugins>

    <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
    </plugin>

        <!-- ... -->

</plugins>

5- Spring Boot Projekt laufen

Oben haben Sie das  HelloSpringBoot Projekt durch die Eclipse & Spring Tool Suite erstellt, und es gibt gar keine Änderungen. Alle Dinge werden standardmäßig erstellt.  Jetzt brauchen Sie einige Schritten zum Applikation-Starten
Ihr  HelloSpringBoot Applikation startet und Sie können den Pfad zu starten probieren
Ein Fehler "404 Not found" entsteht wenn Sie den oben Pfad starten. Aber es ist nicht so wesentlich weil Ihr Projekt noch keine Seite hat
Erstellen Sie die File style.css im Ordner static:
style.css

h1 {
    color: red;
}
Und starten Sie den Pfad wieder

Run Configuration...

Sie können den Parameter für den Server wie Port,contextPath,... verändern. Diese Fragen werden im Verzeichnis am Ende des Dokument erwähnt.

6- Wie funktioniert Spring Boot?

Wenn Sie ein  "Spring Boot Web Appp" erstellen, werden 1 Class durch Tool  "Spring Tool Suite" erstellt (generate)
  • HelloSpringBootApplication

Ihre Applikation beginnt mit der Durchführung vom Class  HelloSpringBootApplication. Diese Class wird durch @SpringBootApplication.kommentiert
HelloSpringBootApplication.java
package org.o7planning.hellospringboot;

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

@SpringBootApplication
public class HelloSpringBootApplication {

    public static void main(String[] args) {
        SpringApplication.run(HelloSpringBootApplication.class, args);
    }
}
 
Das Kommentar  @SpringBootApplication ist so ähnlich wie die Benutzung von @Configuration, @EnableAutoConfiguration und  @ComponentScan mit ihren standardmäßigen Attribute
Deshalb hilft  @SpringBootApplication Ihnen bei der automatischen Konfigurierung vom Spring, und ganz den Projekt automatisch überprüfen (Scan) um die Elemente von Spring  ( Controller, Bean, Service,...) zu finden

7- Technologies for View Layer

Next tutorial:

8- Der Anhang: Server konfigurieren

Oben haben Sie die Applikation Spring Boot startet, Sie können die Server Konfiguration wie Port, contextPath, .... ändern
Verändern Sie den Server HTTP Port:
Sie können die anderen Attribute ändern wenn Sie möchten. Die Eclipse schlage die veränderbaren Attribute und ihre Bedeutung vor