Hallo. In diesem Artikel werden wir das bisher erstellte TODO verfeinern.
1: [Grundlegendes zu den Super-Grundlagen] Eine kurze Beschreibung von MVC 2: [Vorlage vorbereiten] Ich möchte eine Vorlage mit Spring Initializr erstellen und eine Hallo-Welt erstellen 3: [Verbindung / Einstellungen / Datenanzeige mit MySQL] Temporäre Daten in MySQL speichern-> Alle abrufen-> Oben anzeigen 4: [POST-Funktion] Implementierung der Posting-Funktion 5: [PATCH-Funktion] TODO-Anzeige umschalten 6: [Einfach zu verwendendes JpaRepository] Implementierung der Suchfunktion [7: [Häufig mit Thymeleaf-Vorlagenfragmenten] Header erstellen] (https://qiita.com/nomad_kartman/items/8c33eca2880c43a06e40) [8: [PUT-Funktion] Implementierung der Bearbeitungsfunktion] (https://qiita.com/nomad_kartman/items/66578f3f91a422f9207d) 9: TODO-Anzeige in chronologischer Reihenfolge sortieren + Fälligkeitsdatum auf das heutige Datum setzen (jetzt hier)
Gemäß den aktuellen Spezifikationen wird die TODO-Liste in chronologischer Reihenfolge von Erstellungsdatum und -zeit angezeigt.
Mit anderen Worten, das neue TODO befindet sich am unteren Rand des Displays.
Es ist in Ordnung, aber sortieren wir sie nach dem registrierten Datum (dh der Reihenfolge des neuesten Erstellungsdatums)!
Sortierarbeiten sind sehr wichtig, da sie beim Umgang mit Daten folgen!
java/com/example/todo/dao/TodoRepository.java
@Repository
public interface TodoRepository extends JpaRepository<TodoEntity, Long> {
List<TodoEntity> findByTitleContaining(String searchWord);
//↓ Hinzufügen
List<TodoEntity> findAllByOrderByCreateTimeDesc();
}
Eine Methode zum Implementieren einer partiellen Übereinstimmungssuche wurde dem Repository hinzugefügt, aber wir werden ein neues "findAllByOrderByCreateTimeDesc ()" hinzufügen.
Auf diese Weise übergibt JpaRepository alle Daten in der Datenbank in einem Zustand, in dem das Erstellungsdatum und die Erstellungszeit in absteigender Reihenfolge sortiert sind.
Es ist super praktisch!
Bearbeiten Sie dann die Serviceklasse.
java/com/example/todo/TodoService.java
public List<TodoEntity> findAllTodo() {
//return todoRepository.findAll();
return todoRepository.findAllByOrderByCreateTimeDesc();
}
Der auskommentierte Teil war die bisherige Beschreibung, aber ich werde die Funktion aufrufen, die ich zuvor gemacht habe.
Auf diese Weise wird die Liste der in / top angezeigten TODOs in absteigender Reihenfolge von Erstellungsdatum und -zeit angezeigt!
Dieses Mal werde ich JS direkt in top.html schreiben (Es ist nicht so gut, es direkt zu schreiben, aber diesmal ist es eine einfache Anwendung, also lass es uns tun w)
resources/templates/top.html
<script>
var today = new Date();
today.setDate(today.getDate());
var yyyy = today.getFullYear();
var mm = ("0" + (today.getMonth() + 1)).slice(-2);
var dd = ("0" + today.getDate()).slice(-2);
$("#date").val(`${yyyy}-${mm}-${dd}`);
</script>
Es ist in Ordnung, wenn Sie ein solches Skript kurz vor dem schließenden Tag des Körpers schreiben.
Durch Setzen von Slice (-2)
werden nur die letzten beiden Ziffern des Strings angezeigt.
Auf diese Weise wird die einstellige Nummer mit 0 angezeigt, z. B. 01, 05, und die zweistellige Nummer wird ohne 0 angezeigt (nur die letzten beiden Ziffern von 012 werden angezeigt. .)
Diejenigen, die bereits auf dieses Verfahren zur Erstellung von TODO-Anwendungen verwiesen haben
resources/templates/top.html
<input type="date" id="date" name="deadline" class="col-9 my-0">
Ich denke, dass dies der Fall ist, aber da hier id = "date" festgelegt ist, wird das heutige Datum von JQuery übergeben.
Dies ist die Feineinstellung für diese Zeit.
Ab dem nächsten Mal möchte ich auf die Ausnahmebehandlung eingehen!
Recommended Posts