2010-11-23 32 views
0

您好我正在使用Spring MVC 3進行註釋。spring:一個POST中有多個參數

如何使用多個ModelAttributes在一個<form:form>標籤

這一切都完美地使用一個ModelAttribute,但嵌套和使用兩個不起作用。有沒有辦法做到這一點?或者我將如何發送ModelAttributeRequestParameter在同一POST請求?

+0

什麼不適用於嵌套對象? – axtavt 2010-11-23 20:47:30

回答

3

您可以輕鬆地使用持有人的對象,像這樣幾個對象組合成一個模型屬性:

public class Foo { 
    private String name; 
    ... 
} 

public class Bar { 
    private String name; 
    ... 
} 

public class FooBarForm { 
    private Foo foo; 
    private Bar bar; 
    ... 
} 

<form:form modelAttriubte = "fooBarForm" method = "post"> 
    <form:input path = "foo.name" /> 
    <form:input path = "bar.name" /> 
</form:form> 

@RequestMapping(...) 
public String processForm(@ModelAttribute FooBarForm form, ...) { ... } 

@RequestParam可以@ModelAttribute以及組合(注意,春天標籤不支持@RequestParam):

<form:form modelAttriubte = "foo" method = "post"> 
    <form:input path = "name" /> 
    <input type = "text" name = "bar_name" /> 
</form:form> 

@RequestMapping(...) 
public String processForm(@ModelAttribute Foo foo, 
    @RequestParam("bar_name") String barName) { ... } 
相關問題