[JAVA] Erstellen wir eine Buchverwaltungs-Webanwendung mit Spring Boot part1

Einführung

Hallo, mein Name ist @ Ikuto19, ein Student, der Programmieren studiert. Dieses Mal werde ich nach dem Studium eine einfache Webanwendung für die Buchverwaltung mit Spring Boot of Java erstellen. Früher habe ich es in Python anstelle von Java geschrieben, aber ich persönlich habe es nicht verstanden, also habe ich beschlossen, es neu zu erstellen. Die Punkte, die nicht überzeugen, sind wie folgt.

Ich bin der Meinung, dass Ruby, Java und PHP häufig als serverseitige Programmiersprachen verwendet werden. Es scheint, dass die meisten dieser drei verwendet werden, auch wenn Sie es im Internet nachschlagen. (Persönliche Forschung)

Python ist keine Serverseite, sondern eine Programmiersprache, die sich gut mit KI, Deep Learning und Data Science auskennt. Selbst wenn ich es als serverseitige Sprache für Web-Apps verwenden würde, dachte ich, es wäre keine Lernerfahrung, wenn ich es nicht viel verwenden würde, und kam auf die Idee, es dieses Mal in Java neu zu erstellen. Kann ich meine eigene App kostenlos veröffentlichen? Als Ergebnis der Untersuchung erfuhr ich, dass es einen Dienst namens Heroku gibt, was einer der Gründe ist.

Wenn die bereitgestellten Informationen falsch sind oder keine Erklärung enthalten, können Sie darauf hinweisen, ohne sich darüber Gedanken machen zu müssen. Dieser Artikel ist für mein eigenes Studium und für diejenigen, die genauso stolpern wie ich. Also vielen Dank.

Voraussetzungen

Über jedes Tool und Projekt

Über Spring Framework

Offizielle Seite → https://spring.io/ Das Spring Framework ist ein Framework für die schnelle und sichere Entwicklung der Java-Entwicklung, und Sie können es anscheinend als Spring lesen. In diesem Frühjahr werden "DI: Dependency Injection" und "AOP: Aspect Oriented Programming" vorgestellt.

Über Maven

Offizielle Seite → https://maven.apache.org/ Maven ist eines von mehreren Build-Tools. Es gibt andere Gradle und Ant, aber dieses Mal habe ich mich für maven entschieden, weil ich die fertige Anwendung für Heroku bereitstellen werde. Durch die Beschreibung der Abhängigkeit in pom.xml können Sie verschiedene Pakete verarbeiten.

Über openBD

Offizielle Seite → https://openbd.jp/ Diese openBD ist eine kostenlose API, mit der jeder auf bibliografische Informationen und Cover zugreifen kann. Dieses Mal werden wir über diese API mit jQuery of Javascript auf die Buchinformationen zugreifen.

Über Heroku

Offizielle Seite → https://jp.heroku.com/about Ein container-basierter Cloud-basierter PaaS-Dienst, mit dem Sie aus einer Vielzahl von Programmiersprachen auswählen und Ihre eigenen Apps bereitstellen und verwalten können.

Einführung von Werkzeugen

Installieren Sie das Spring-Projekt auf der installierten Eclipse

  1. Installieren Sie nach dem Starten von Eclipse Spring Tools 4 (auch bekannt als Spring Tool Suite 4). 4.7.0.RELEASE über Hilfe> Eclipse Marketplace.
  2. Aktivieren Sie alle Kontrollkästchen
  3. Aktivieren Sie "Ich akzeptiere die Nutzungsbedingungen" und vervollständigen Sie diese
  4. Sie werden gefragt, ob Sie neu starten möchten. Starten Sie also neu, wie es ist.

Wenn in der Sicherheitswarnung "Nicht signierte Software installieren, die nicht vertrauenswürdig oder validiert ist. Möchten Sie die Installation fortsetzen?" Angezeigt wird, klicken Sie auf die Schaltfläche "Installieren".

Registrierung bei Heroku und Registrierung bei Creca

Erstelle ein Konto bei Heroku

Anmelden → https://signup.heroku.com/login

  1. Geben Sie die erforderlichen Elemente oben ein und erstellen Sie ein Konto
  2. Sie erhalten eine Bestätigungs-E-Mail. Klicken Sie darauf, um ein Passwort festzulegen.

Wenn Sie dies bisher getan haben, sollten Sie einen Dashboard-Bildschirm haben.

Registrieren einer Kreditkarte zur Verwendung von MySQL

In Heroku ist die Standarddatenbank PostgreSQL, daher müssen Sie ein kostenloses Add-On namens clearDB hinzufügen, um es zu MySQL zu machen. Dazu müssen Sie jedoch Ihre Kreditkarte registrieren. Registrieren Sie sich also.

  1. Klicken Sie im Dashboard-Bildschirm über das Symbol in der oberen rechten Ecke auf Kontoeinstellungen
  2. Klicken Sie auf der Registerkarte "Abrechnung" unter "Rechnungsinformationen" auf "Kreditkarte hinzufügen".
  3. Geben Sie die erforderlichen Elemente ein und klicken Sie auf Details speichern

Erstellen und Ausführen einer Test-App und Veröffentlichen auf Heroku

Erstellen einer Test-App

Vorerst werde ich den Erstellungsvorgang veröffentlichen, aber da ich das Projekt auf GitHub veröffentlicht habe, können Sie den folgenden Befehl herunterladen.

terminal


$ git clone https://github.com/ikuto19/test-webapp.git
Erstellungsverfahren
  1. Klicken Sie nach dem Starten von Eclipse mit der rechten Maustaste in den Paket-Explorer
  2. Klicken Sie auf Neu> Projekt
  3. Wählen Sie das Spring Starter-Projekt für Spring Boot aus und klicken Sie auf Weiter
  4. Nennen Sie es "webapp-test", gruppieren und verpacken Sie "com.app" und klicken Sie auf "Weiter".
  5. Überprüfen Sie Thymeleaf in der Abhängigkeitsvorlagen-Engine und Spring Web im Web und klicken Sie auf "Fertig stellen".

Wenn Sie den Inhalt des Projekts überprüfen, werden Sie feststellen, dass es die im Bild unten gezeigte Struktur hat. Wenn kein Vorlagenordner vorhanden ist, erstellen Sie einen. スクリーンショット 2020-07-26 16.35.59.png

Erstellen Sie dann eine neue Datei oder löschen Sie eine vorhandene Datei mit der folgenden Konfiguration. スクリーンショット 2020-07-27 13.38.23.png

Der Inhalt jeder Datei wird wie folgt beschrieben.

App.java


package com.app;

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

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

IndexController.java


package com.app.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class IndexController {
	
	@GetMapping("/")
	public String getIndexPage(Model model) {
		String message = "Hello, World!!";
		model.addAttribute("message",message);
		return "index";
	}
}

index.html


<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<meta charset="UTF-8">
<head>
<title>Test App</title>
</head>
<body>
	<p th:text="${message}"></p>
</body>
</html>

Procfile


web: java $JAVA_OPTS -jar target/*.jar --server.port=$PORT

Ausführungsbestätigung

Konsole


020-08-11 17:25:37.546  INFO 13991 --- [          main] com.app.App     : Started App in 6.855 seconds (JVM running for 7.79)

Wenn App.java im Paket-Explorer ausgewählt ist, klicken Sie mit der rechten Maustaste und klicken Sie auf Ausführen> Spring Boot-Anwendung, um sie auszuführen. Wenn Sie nach dem letzten Anzeigen des obigen Protokolls mit einem Webbrowser auf http: // localhost: 8080 / zugreifen, wird das folgende Bild angezeigt. スクリーンショット 2020-07-26 17.13.10.png

In Heroku bereitstellen

Führen Sie die folgenden Befehle der Reihe nach aus Wenn Sie nach dem Ausführen der "Heroku-Anmeldung" eine Taste drücken, wird diese zum Webbrowser übersprungen. Klicken Sie daher auf die Schaltfläche "Anmelden"

terminal


$ brew tap heroku/brew && brew install heroku
$ heroku login

Wenn Sie mit dem Befehl create die Fehlermeldung "Name test-webapp ist bereits vergeben" erhalten, ändern Sie den App-Namen. Ich möchte, dass es von anderen Leuten benutzt wird. Ich habe die App "test-webapp01" genannt.

terminal


$ cd (Pfad mit Eclipse-Arbeitstempo)/webapp-test
$ git init
$ heroku create test-webapp01
$ git add .
$ git commit -m "first upload"
$ git push heroku master (Oder git push-f heroku master)

スクリーンショット 2020-07-27 14.37.58.png Wenn Sie BUILD SUCCESS so sehen, haben Sie es wohl geschafft. Bitte öffnen Sie es mit dem folgenden Befehl und überprüfen Sie es. Das ist alles für diese Zeit.

terminal


$ heroku open

Am Ende

Dieses Mal haben wir uns auf die Erstellung einer Buchverwaltungs-App vorbereitet und eine Test-App erstellt und veröffentlicht. Ich habe vor, den Code ab dem nächsten Mal ausführlich zu erläutern, und werde schließlich eine Buchverwaltungsanwendung erstellen.

Fortsetzung beim nächsten Mal> Erstellen wir eine Webanwendung für die Buchverwaltung mit Spring Boot part2

Referenzseite

Versuchen Sie, Spring Framework mit Eclipse zu verwenden

Heroku-Anfänger versuchen Hallo, Heroku

Vier Dinge, auf die Heroku-Anfänger bei der Bereitstellung von von Java erstellten Webanwendungen mit GitHub-Integration gestoßen sind

Erklären Sie sorgfältig, wie Sie eine Webanwendung mit Spring Boot erstellen

Recommended Posts

Erstellen wir eine Buchverwaltungs-Webanwendung mit Spring Boot part1
Lassen Sie uns mit Spring Boot part3 eine Webanwendung für die Buchverwaltung erstellen
Lassen Sie uns mit Spring Boot part2 eine Webanwendung für die Buchverwaltung erstellen
Erstellen wir eine einfache API mit EC2 + RDS + Spring Boot ①
Starten Sie die Entwicklung von Webanwendungen mit Spring Boot
Führen Sie die WEB-Anwendung mit Spring Boot + Thymeleaf aus
Erstellen Sie einen Web-API-Server mit Spring Boot
Java-Anfänger haben versucht, mit Spring Boot eine einfache Webanwendung zu erstellen
Machen wir einen LINE Bot mit Ruby + Sinatra - Teil 2
[Spring Boot] Erstellung von Webanwendungen
Machen wir einen LINE Bot mit Ruby + Sinatra - Teil 1
Ich habe versucht, eine Webanwendung voller Fehler mit Spring Boot zu klonen
Erstellen Sie ein WEB-System mit Spring + Doma + H2DB Part 2
Lassen Sie uns einen Leistungsschalter für den Backend-Service mit Actuator of Spring Boot (Teil 1) herstellen.
Die erste WEB-Anwendung mit Spring Boot-Making a Pomodoro Timer-
Bis Sie eine Webanwendung mit Servlet / JSP erstellen (Teil 1)
Erstellen Sie eine Anfrage-App mit Spring Boot
Erstellen Sie eine Webanwendung mit Javalin
Implementieren Sie einen einfachen Web-REST-API-Server mit Spring Boot + MySQL
[Anfänger] Versuchen Sie, die REST-API für die Todo-App mit Spring Boot zu schreiben
Verarbeitung beim Starten einer Anwendung mit Spring Boot
Machen wir eine Weihnachtskarte mit Verarbeitung!
Erstellen Sie mit Dropwizard eine einfache Webanwendung
HTTPS mit Spring Boot und Let's Encrypt
Starten Sie die Nginx + Spring Boot-Anwendung mit Docker-Compose
Spring Boot2-Webanwendungsentwicklung mit Visual Studio Code SQL Server-Verbindung
Erstellen einer Entwicklungsumgebung für Java-Webanwendungen mit Docker für Mac Teil1
Spring Boot2-Webanwendungsentwicklung mit Visual Studio Code Hello World-Erstellung
Automatische Bereitstellung von in Java entwickelten Webanwendungen mit Jenkins [Spring Boot App Edition]
Erstellen Sie mit Docker für Mac Teil2 eine Entwicklungsumgebung für Java-Webanwendungen
[Spring Boot] Vorsichtsmaßnahmen beim Entwickeln einer Webanwendung mit Spring Boot und beim Ausführen eines Krieges auf einem unabhängigen Tomcat-Server
Erstellen Sie eine Website mit Spring Boot + Gradle (jdk1.8.x)
Konfigurieren Sie die Spring Boot-Anwendung mit dem Maven Multi-Modul
Erstellen Sie mit Spring Boot eine einfache Such-App
Erstellen Sie eine Spring Boot-Anwendung mit IntelliJ IDEA
Lassen Sie uns eine Suchfunktion mit Rails (Ransack) machen
Stellen Sie die Spring Boot-Anwendung für Elastic Beanstalk bereit
Erstellen Sie ein WEB-System mit Spring + Doma + H2DB
Erstellen Sie mit Docker eine Spring Boot-Entwicklungsumgebung
Ich habe eine App für maschinelles Lernen mit Dash (+ Docker) Teil 3 ~ Übung ~ erstellt
Erstellen wir eine Taschenrechner-App mit Java ~ Erstellen Sie einen Anzeigebereich im Fenster
Melden Sie sich bei Spring Boot-Webanwendungen auf der Microsoft ID-Plattform an
Vom Erstellen eines Spring Boot-Projekts bis zum Ausführen einer Anwendung mit VS Code
Lassen Sie uns eine TODO-Anwendung mit Java 2 erstellen. Ich möchte eine Vorlage mit Spring Initializr erstellen und eine Hello-Welt erstellen
Wovon ich süchtig war, als ich eine Spring Boot-Anwendung mit VS Code entwickelte
Erstellen Sie ein WEB-System mit Spring + Doma + H2DB + Thymeleaf
Versuchen Sie, OpenID Connect mit Keycloak (Spring Boot-Anwendung) zu verwenden.
[JUnit 5-kompatibel] Schreiben Sie einen Test mit JUnit 5 mit Spring Boot 2.2, 2.3
[Java-Grundlagen] Lassen Sie uns ein Dreieck mit einer for-Anweisung erstellen
Implementieren Sie eine einfache Rest-API mit Spring Security mit Spring Boot 2.0
[Arbeitsnotiz für persönliche Anwendungen] Erstellen Sie einen Kalender mit simple_calendar
Passen Sie die Antwort auf REST-API-Fehler mit Spring Boot an (Teil 2).
[JUnit 5] Schreiben Sie einen Validierungstest mit Spring Boot! [Parametrisierungstest]
Ein Memorandum beim Erstellen eines REST-Service mit Spring Boot
Erstellen Sie mit Spring Security 2.1 eine einfache Demo-Site mit Spring Security
Spring Boot 2.3 Verfügbarkeit von Anwendungen
Passen Sie die Antwort auf REST-API-Fehler mit Spring Boot an (Teil 1).
Ich habe jetzt einen Test mit Spring Boot + JUnit 5 geschrieben
[Einführung in die Android App-Entwicklung] Machen wir einen Zähler