2010-09-05 19 views
1

比方說,你有一個HTML表單:使用Spring 3中的表單類,如何將名爲「order_id」的HTML表單字段映射到Java字段「orderId」?

<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類相似的地方?

回答

2

所有你需要做的是在你的表單支持類屬性命名爲「ORDER_ID」:

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

    ... getters, setters ... 
} 
+0

我沒能得到這個工作。我必須將我的setter方法命名爲「setProject_ids」 – 2015-08-14 21:24:19

相關問題