С помощью класса формы в Spring 3, как сопоставить поле HTML-формы с именем «order_id» с полем Java «orderId»?

Допустим, у вас есть HTML-форма:

<form> 
 <input name = "in1" id="in1" type="text" value="one"> 
 <input name = "in2" id="in2" type="text" value="two"> 
 <input name = "in3" id="in3" type="text" value="three"> 
</form>

С помощью @RequestParam вы можете связывать поля как отдельные параметры:

public String doAjax(@RequestParam("in1") String in1, 
    @RequestParam("in2") String in2, @RequestParam("in2") String in2)

Но вы также можете (предположительно) создать класс для хранения данные формы и передать их как атрибут модели:

public class AjaxForm {
    private String in1;
    private String in2;
    private String in3;

    ... getters, setters ...
}

-

public String doAjax(AjaxForm form)

Но что, если в некоторых полях формы есть подчеркивания?

Допустим, поле HTML-формы называется «order_id», а поле класса - «orderId» ".

Есть ли способ связать их, не переименовывая HTML?

С помощью аннотации @RequestParam вы можете сделать это, сказав:

@RequestParam(value="order_id") String orderId

Есть ли способ сделать что-то подобное с классом AjaxForm, описанным выше?

1
задан Bowe 5 September 2010 в 14:06
поделиться