Legen Sie das Datumsformat für einen Eingabetext mithilfe von Spring MVC fest

7

Wie kann ich das Format für ein Datum in einem Textfeld mit Spring MVC festlegen?

Ich verwende die Spring Form-Tag-Bibliothek und das input -Tag.

Was ich jetzt bekomme ist so etwas wie Mon May 28 11:09:28 CEST 2012 .

Ich möchte das Datum in dd/MM/yyyy format anzeigen.

    
davioooh 28.05.2012, 13:00
quelle

3 Antworten

8

Registrieren Sie einen Datumseditor in Ihrem Controller:

%Vor%

und dann kann der Dateneditor selbst so aussehen:

%Vor%

Ich verwende meine eigene abstrakte Nutzungsklasse (Joda) zum Parsen von Daten, in der Tat LocalDates von der Joda Datetime-Bibliothek - empfohlen wie der Standard Java Datum / Kalender ist ein Greuel, imho. Aber Sie sollten die Idee bekommen. Außerdem können Sie einen globalen Editor registrieren, so dass Sie nicht jeden Controller (ich kann mich nicht erinnern wie).

    
NimChimpsky 28.05.2012, 13:11
quelle
8

Fertig! Ich habe diese Methode meiner Controller-Klasse hinzugefügt:

%Vor%     
davioooh 28.05.2012 13:11
quelle
7

Wenn Sie alle Daten formatieren möchten, ohne den gleichen Code in jedem Controller zu wiederholen, können Sie einen globalen InitBinder in einer Klasse erstellen, die mit @ControllerAdvice Anmerkung

Schritte

1. Erstellen Sie eine DateEditor-Klasse, die Ihre Daten wie folgt formatiert:

%Vor%

2. Erstellen Sie eine mit @ControllerAdvice (ich nannte es GlobalBindingInitializer) annotierte Klasse:

%Vor%

3. Fügen Sie in Ihrer Spring MVC-Konfigurationsdatei (z. B. webmvc-config.xml) die Zeilen hinzu, mit denen Spring das Paket scannen kann, in dem Sie Ihre GlobalBindingInitializer-Klasse erstellt haben. Wenn Sie beispielsweise GlobalBindingInitializer im Paket org.example.common erstellt haben:

%Vor%

Fertig!

Quellen:

Kurt Bourbaki 26.08.2013 07:23
quelle

Tags und Links