Nur die Grundkenntnisse in reinem Java und DB Das Spring-Projekt hat sich von Anfang an nach den Turbulenzen beruhigt. Bitte geben Sie uns Ihre Eindrücke und Ihr Memorandum. Der Inhalt des Artikels ist mehr als ein Tutorial und weniger als eine Übung. : language_balloon: Es wurde nicht bestätigt, dass der angegebene Code funktioniert, daher dient er nur als Referenz. : bete: Englisch ist rutschig, also ist Japanisch vielfältig, vergib mir. : bete :: schluchz :: bete:
Red Hat (Entwicklungsumgebung ist Cent) 7-Serie Java8 SpringBoot2.1.6 MySQL8-Serie STS
Wenn wir verstehen, dass wir die Logik (Modell), den Bildschirm (Ansicht) und den Controller (Controller), der sie verbindet, separat entwerfen. Im Frühjahr werden die zwischen View und Controller ausgetauschten Daten jedoch als Modell bezeichnet. Ich war besorgt, ob ich MVC überhaupt verstehen könnte, aber ich hörte auf, tief nachzudenken, weil die Definition von Wörtern für jedes Framework unterschiedlich ist. : unschuldig: https://qiita.com/yo1000/items/a6acbf5f454a7f53aef9 https://qiita.com/takasek/items/70ab5a61756ee620aee6
·Kartierung Fügen Sie der Methode "@GetMapping (" test ")" hinzu. @RequestMapping ("/ test") scheint alt zu sein.
Es scheint, dass das, was in Klammern beschrieben wird, als Attribut bezeichnet wird. Das Obige ist eine Abkürzung für "@GetMapping (path =" test ")". Wenn Sie mehrere Schaltflächen in ein Formular-Tag und einen POST einfügen möchten, können Sie diese dem params-Attribut des Controllers zuordnen, indem Sie den Namen in HTML angeben.
view.html
<form method="POST" action="path1">
<input type="submit" name="param1" />← Hier drücken
<input type="submit" name="param2" />
</form>
controller.java
@PostMapping(path="path1",params="param1")
** ・ Validierung ** Es ist in Abhängigkeit von der Feder vorgesehen. Wenn Sie "BindingResult" ausführen können, können Sie eine Validierung implementieren, die nicht an das Framework gebunden ist. Die meisten Dinge können jedoch mit Anmerkungen und benutzerdefinierter Validierung erledigt werden. https://qiita.com/yakumo3390/items/4e47930ba643b45b7430
Nachrichten werden auch mit eingebetteten Zeichen und mehrsprachiger Unterstützung in messages.properties bereitgestellt, aber ich konnte sie nicht verwenden, da es erforderlich war, Nachrichten in der Datenbank zu verwalten.
Durch Hinzufügen eines Gruppenattributs können Sie Validierungsziele angeben oder ausschließen. Ich habe dafür eine leere Klasse gemacht, aber ich denke, es gibt einen klügeren Weg. https://tech.asoview.co.jp/entry/2019/12/11/104928
** · Rückkehr ** Grundsätzlich handelt es sich um eine Zeichenfolge, die den Ansichtspfad darstellt. Es gibt auch Weiterleitungen und Weiterleitungen. Wenn Sie zum Zeitpunkt der Umleitung den Wert in "RedirectAttributes" packen, erreicht er das Übergangsziel. http://www.ne.jp/asahi/hishidama/home/tech/java/spring/boot/web/Controller.html#h_forward_attribute
Wenn beim Übergeben eines Objekts "toString ()" implementiert ist, kann es so übergeben werden, wie es ist, andernfalls scheint es ein Ärger zu sein. https://grandbig.github.io/blog/2016/05/28/redirect-parameter-spring-boot/
Verwenden Sie Thymeleaf (Zeitblatt). Schwer zu lesen und zu buchstabieren. : küssen: Sogenannte Vorlage. Beachten Sie, dass es eine coole Beschreibung ist, wenn Sie nicht nur den Bildschirm, sondern auch das generierte HTML überprüfen.
Obwohl das Feld th: praktisch ist, kann es in Kombination mit JavaScript, das Name und ID angeben möchte, möglicherweise nicht verwendet werden. Vielleicht möchten Sie verstehen, was Sie tun. https://qiita.com/beeeyan/items/5bd820e55cb53f176b3e
Seien Sie vorsichtig, wenn Sie Variablen in JavaScript verwenden. Ausnahmen sind schwer zu finden. Wenn Sie das gesamte Objekt verwenden, wird es auf HTML erweitert und ist nicht gut für die Sicherheit. Sie werden überrascht sein, wenn Sie es sehen. [Offizielles Dokument 12.2 Inline-Verarbeitung von Skripten (JavaScript und Dart)](https://www.thymeleaf.org/doc/tutorials/2.1/usingthymeleaf_ja.html#%E3%82%B9%E3%82%AF%E3% 83% AA% E3% 83% 97% E3% 83% 88% E3% 81% AE% E3% 82% A4% E3% 83% B3% E3% 83% A9% E3% 82% A4% E3% 83% B3% E5% 87% A6% E7% 90% 86-Javascript-% E3% 81% A8-Dart)
Wo man Geschäftslogik schreibt.
Diesmal wurde im Prinzip ein Service für eine Tabelle erstellt. Und einige Allzweckklassen. Der Zweck bestand darin, die Ebenen einzugrenzen, die auf die Datenbank zugreifen können, aber dann schwoll eine Klasse an. : Stirnrunzeln2: Es ist möglicherweise besser, einen Dienst für einen Bildschirm zu erstellen und die von der Datenbank mit Repository erfassten Daten zu verarbeiten. Oder fügen Sie eine Ebene hinzu, die die Logik für einen Bildschirm beschreibt? .. .. ?? : verwirrt:
Memo nach dem ersten Frühlingsprojekt - Was ist Frühling? Memo nach der ersten Frühjahrsprojekt-Datenbank-
Recommended Posts