2010-09-27 7 views
6

Vom Frühling API, ich verstand, dass @InitBinder verwendet wird, einige verbindlichen Regeln zu initialisieren ..Warum setDisallowedFields für die ID? - Frühling petclinic Beispiel

Im petclinic Beispiel, warum wir setdisallowed("id") haben? Wenn die ID nicht im Formular angezeigt wird?

@InitBinder 
public void setAllowedFields(WebDataBinder dataBinder) { 
    dataBinder.setDisallowedFields("id"); 
} 

Das ID-Feld wird nicht auf der Webseite angezeigt, warum verwenden wir dann den obigen Code?

können wir haben einige etwas wie folgt aus:

@InitBinder 
public void setAllowedFields(WebDataBinder dataBinder) { 
    dataBinder.setDisallowedFields("FirstName"); 
} 

gemäß den obigen Code das Feld Vorname des Inhabers Objekt wird nicht gesetzt, obwohl Benutzer auf dem Formular eingibt? Ist das korrekt?

link for the source

Antwort

5

Weil es noch vorgelegt werden, wenn der Endbenutzer die Seite oder die Anforderung modifiziert (zB mit Firebug). So kann er Werte in Ihr gebundenes Objekt einfügen, auch wenn Sie dies nicht möchten.

+0

Danke Bozho für Ihre Antwort .. – javanoob

Verwandte Themen