2010-09-27 7 views
6

Od wiosny API, zrozumiałem, że @InitBinder służy do zainicjowania pewnych zasad obowiązujących ..dlaczego setDisallowedFields dla id? - Wiosna petclinic przykład

W petclinic przykład dlaczego mamy setdisallowed("id")? kiedy identyfikator nie jest wyświetlany w formularzu?

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

Pole identyfikacyjne nie jest wyświetlane na stronie internetowej, a następnie dlaczego używamy powyższego kodu?

możemy mieć pewne rzeczy tak:

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

jak na powyższym kodzie pierwsza nazwa pola obiektu właściciel nie zostanie ustawiony jeśli użytkownik wpisze w formularzu? Czy to jest poprawne?

link for the source

Odpowiedz

5

Ponieważ można jeszcze składać gdy użytkownik końcowy modyfikuje się żądanie strony lub (na przykład za pomocą FireBug). W ten sposób może wstrzykiwać wartości do związanego obiektu, nawet jeśli tego nie chcesz.

+0

Dzięki Bozho za odpowiedź .. – javanoob

Powiązane problemy