[JAVA] Spring Boot ab Null Teil 1

Ziel

Es wird mehrfach implementiert.

  1. Wissen Sie ungefähr, was Spring Boot ist ← Ich werde diesmal </ font> machen
  2. Umgebung erstellen und Hello World anzeigen! ← Diesmal mache ich </ font>
  3. Übergeben Sie Parameter und Objekte
  4. Probieren Sie andere Funktionen aus

Verweise

Was ist Spring Boot?

Es macht es einfacher, "spring" zu schreiben, eine Art Java-Framework. Durch die Verwendung einer Anmerkung (eine Beschreibungsmethode mit @, z. B. "@ Override") muss keine komplizierte XML-Einstellungsdatei mehr beschrieben werden, und das Anhängen ist sehr einfach.

Umgebung

Wir verwenden eine Entwicklungsumgebung namens "STS (Spring Tool Suite4)". Basierend auf Eclipse, das als Java-Entwicklungsumgebung bekannt ist, verfügt es über Funktionen, die die Entwicklung im Frühjahr komfortabler machen.

    1. Laden Sie STS auf der folgenden Site herunter und führen Sie es aus. (Für Zip entpacken)

STS (Spring Tool Suite) SpringBoot_2.png Es ist in Ordnung, wenn ein Ordner mit dem Namen "sts-4.X.X.RELEASE" erstellt wird.

  1. Laden Sie den japanischen STS-Patch von der folgenden Website herunter. (Weil der Standard Englisch ist) ・ Pleiades Japanese Localization Plug-In
  • Es ist nicht "Pleia des All in One Download" oben auf der Seite, sondern eine darunter. SpringBoot_4.png
    1. Führen Sie die Setup-Datei im heruntergeladenen pleiades-win aus. SpringBoot_5.png Der folgende Bildschirm wird gestartet. Geben Sie "SpringToolSuite4.exe" im Ordner "sts-4.X.X.RELEASE" in "Application to Japaneseize" an und klicken Sie auf "Japaneseize". Starten Sie STS und wenn es auf Japanisch ist, sind Sie fertig!

Projekterstellung

Wählen Sie nach dem Starten von STS [Datei] - [Neu] - [Spring Starter Project]. Klicken Sie auf diesem Bildschirm ohne Bedienung auf [Weiter].

  • Sie können Maven oder Gradle unter [Typ] auswählen, aber auf dieser Seite wird Maven verwendet. In [New Spring Starter Project Dependencies]
  • [Entwicklungstools] - [Spring Boot DevTools]
  • [Template Engine] - [Thymeleaf] ・ [Web] - [Spring Web] Überprüfen Sie die drei Elemente und klicken Sie auf [Weiter]. Abhängigkeiten werden später erläutert. </ font> Klicken Sie auf diesem Bildschirm ohne Vorgang auf [Fertig stellen]. Sobald Sie ein Projekt wie das folgende haben, sind Sie fertig!

Über Abhängigkeiten

Ich habe zuvor "Spring Boot DevTools", "Thymeleaf" und "Spring Web" überprüft, und der folgende Code wird automatisch in pom.xml geschrieben.

pom.xml


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

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

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-devtools</artifactId>
	<scope>runtime</scope>
	<optional>true</optional>
</dependency>
Name Erläuterung
Thymeleaf Java Template Engine für Webseiten. Spring empfiehlt Thymeleaf anstelle von jsp. Schreiben Sie wie jstl oder EL Ausdruck.
Spring Web Eine Bibliothek, die für Spring Boot-Webanwendungen erforderlich ist.
Spring Boot DevTools Wenn Sie die Java-Datei aktualisieren, können Sie praktische Funktionen wie den automatischen Neustart der Anwendung verwenden.

Wenn Sie die Spirng Boot-Funktion verwenden, müssen Sie daher entweder die Abhängigkeiten beim Erstellen eines Projekts überprüfen oder sie manuell in pom.xml beschreiben.

Grob, aber auch pom.xml ergänzen.

Name Erläuterung
Maven Java-Projektmanagement-Tool. pom.Erleichtern Sie das Erstellen und Bereitstellen Ihrer Anwendung, indem Sie auf XML verweisen.
pom.xml pom ist eine Abkürzung für Project Object Model. Beschreiben der für das Projekt erforderlichen Bibliotheksgruppen- und Versionsinformationen.

Hallo Welt! (RestController)

Wenn Sie ein Projekt erstellen, wird automatisch eine Java-Datei unter "src / main / java / com / example / demo" generiert. Diese Klasse wird von der Annotation "@ SpringBootApplication" als Startklasse der SpringBoot-Anwendung erkannt. Es ist nicht erforderlich, Code manuell hinzuzufügen.

RestController-Klassenerstellung

Erstellen Sie nun eine Klasse im selben Ordner. Klicken Sie mit der rechten Maustaste auf das Symbol com.example.demo und wählen Sie [Neu] - [Klasse]. Geben Sie "DemoRestController" in [Name] ein und klicken Sie auf [Fertig stellen]. Fügen Sie der erstellten Klasse den folgenden Code hinzu. (Für diejenigen, die Eclipse noch nie bedient haben ... Strg + S kann die Datei speichern, Strg + Umschalt + O kann automatisch importiert werden!)

DemoRestController.java


package com.example.demo;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class DemoRestController {

	@RequestMapping(value="/rest",method=RequestMethod.GET)
	public String hello() {
		return "Hello World!";
	}
}

@RestController In der Klasse beschrieben. Es ist eine Controller-Klasse zum Ausgeben des Rückgabewerts der Methode auf die Seite, ohne auf View (HTML-Datei usw.) umzuschalten.

Was ist ein Controller? (Zusammengeklappt, um ein wenig zu entgleisen) Spring und Spring Boot haben das Konzept des "MVC-Modells", das
ist `Model` ・ ・ ・ Verantwortlich für die Verarbeitung von Logik wie Suche und Berechnung. `View` ・ ・ ・ Zeigt das Verarbeitungsergebnis von Model auf der Clientseite an. `Controller` ・ ・ ・ Übergibt die von View empfangenen Informationen an Model. (Und umgekehrt)
Es kommt vom Akronym des Programms, das die Rolle von hat.
`@RequestMapping` In der Methode beschrieben. Dies ist eine Funktion zum Zuordnen von Anforderungen von Clients und Methoden. Es werden Argumente angegeben, die folgenden beiden sind jedoch typisch. `value =" / URL "` ・ ・ ・ Empfängt die Anfrage von der angegebenen URL. `method = RequestMethod.GET (oder POST)` ・ ・ ・ Empfängt eine Anfrage von der angegebenen Übertragungsmethode.

dadurch, Greifen Sie auf "http: // localhost: 8080 / rest" zu ↓ Die URL lautet "/ rest" und die Sendemethode lautet "GET" (wenn Sie die URL eingeben und die Seite anzeigen, ist dies automatisch die GET-Methode. Warum? teratail.com/questions/103203) ist leicht zu verstehen.) ↓ Die "Hallo" -Methode, die diesen Informationen entspricht, wird aufgerufen ↓ Der Rückgabewert "Hello World!" Wird auf der Seite ausgegeben. Der Ablauf ist abgeschlossen.


Darüber hinaus verfügt @ RequestMapping über eine Anmerkung mit einer Übertragungsmethode wie unten gezeigt. Ich werde dies ab dem nächsten Mal verwenden, da es präzise geschrieben werden kann. @GetMapping("/URL") Entspricht @RequestMapping (value =" / URL ", method = RequestMethod.GET). @PostMapping("/URL") Entspricht @RequestMapping (value =" / URL ", method = RequestMethod.POST).


Lassen Sie uns nun die Spring-Anwendung ausführen. Klicken Sie zunächst auf [Fenster] - [Ansicht anzeigen] - [Konsole], um die Konsole anzuzeigen. Klicken Sie mit der rechten Maustaste auf das Projekt und klicken Sie auf Run-Spring Boot Application. Nachdem Sie bestätigt haben, dass Spring Boot auf der Konsole gestartet wurde, ... Gehen Sie in Ihrem Browser zu "http: // localhost: 8080 / rest". Hallo Welt! Wird angezeigt!

Hallo Welt! (Controller)

In der RestController-Edition wurde Hello World als Rückgabewert der Methode angezeigt. Lassen Sie es uns diesmal als HTML-Datei anzeigen.

Erstellung von HTML-Dateien

Klicken Sie mit der rechten Maustaste auf "src / main / resources / templates" und wählen Sie [Neu] - [Andere]. Wählen Sie [Web] - [HTML-Datei] und klicken Sie auf [Weiter].

  • Wenn Sie in [Assistent] html eingeben, wird es sofort angezeigt, wie in der Abbildung unten gezeigt. Geben Sie "Index" in [Dateiname] ein und klicken Sie auf [Weiter]. Wählen Sie [Vorlage] - [Neue HTML-Datei (5)](ich denke, sie ist standardmäßig ausgewählt) und klicken Sie auf [Fertig stellen]. Fügen Sie "Hello World!" Zum "" - Teil hinzu.

index.html


<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
Hello World!
</body>
</html>

Erstellung von Controller-Klassen

Erstellen Sie als Nächstes eine DemoController-Klasse unter src / main / java / com / example / demo und fügen Sie den folgenden Code hinzu. (Die Erstellungsmethode ist dieselbe wie [RestController-Klasse erstellen](# RestController-Klasse erstellen))

DemoController.java


package com.example.demo;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;

@Controller
public class DemoController {
	
	@RequestMapping(value="/",method=RequestMethod.GET)
	public ModelAndView hello() {
		ModelAndView mav=new ModelAndView();
		mav.setViewName("/index");
		return mav;
	}
}

@Controller In der Klasse beschrieben. Im Gegensatz zu "@ RestController" handelt es sich um eine Controller-Klasse, die in "View" übergehen kann. Wenn Sie eine Methode definieren möchten, um den Rückgabewert auf der Seite anzuzeigen, ohne in der angegebenen Klasse zu View zu wechseln, können Sie in die unten gezeigte Methode "@ ResponseBody" schreiben.

@Beispiel für eine Beschreibung des Antwortkörpers


@RequestMapping(value="/body",method=RequestMethod.GET)
@ResponseBody
public String body() {
	return "Hello World?";
}

ModelAndView Diese Klasse verfügt sowohl über die Funktionen "Modell" (Objektverwaltung) als auch "Ansicht" (Webseiteninformationen). Es gibt diese einzelnen Klassen, aber diejenige, die grundsätzlich verwendet wird, ist "ModelAndView". Die Hauptmethoden sind wie folgt.

Methode Wie benutzt man
setViewName("/Dateipfad") Geben Sie den Pfad der anzuzeigenden HTML-Datei an. Der Pfad zum Vorlagenordner muss nicht beschrieben werden.
addObject("Parametername",Parameter) Webページに渡すParameterを[Name,Wert]Als Set speichern. ((Ich werde es das nächste Mal verwenden

Greifen wir jetzt auf "http: // localhost: 8080" zu. Hallo Welt! Wird angezeigt! Da es sich um HTML handelt, wird im Titel der Seite "Titel hier einfügen (Standardtitel)" angezeigt.

Rezension

--SpringBoot erleichtert die Verwendung von Spring

  • Einfache Entwicklung mit Spring Tool Suite
  • Verknüpfung von URL und Methode mit @ RequestMapping
  • Zeigen Sie den Rückgabewert der Methode auf der Seite mit @ RestController an
  • Zeigen Sie die HTML-Datei auf der Seite mit "@ Controller" an

Das ist alles für diese Zeit. Danke für deine harte Arbeit. Ab dem nächsten Mal werden wir beginnen, Parameter zu übergeben!

Recommended Posts