我有一个页面jsp,我将使用来自不同类的许多属性,所以我需要在我的控制器中使用两个@ModelAttribute。如果我在一个控制器中使用两个@ModelAttribute,我必须在我的表单中放入两个commandName。那可能吗?
这是我的表单:( Fonction是Activite类中的一个属性,Etablissement的名称是Etablissement类中的一个属性:
<table id="tabmenu">
<tr>
<td>Fonction :</td>
<td><form:input type="text" class="round default-width-input" path="fonction" /></td>
</tr>
<tr>
<td>Nom d'établissement :</td>
<td><form:input type="text" class="round default-width-input" path="noml"/></td>
</tr>
<tr>
<td>Ville :</td>
<td><form:input type="text" class="round default-width-input" path="villel"/></td>
</tr>
<tr>
<td>Délégation :</td>
<td><form:input type="text" class="round default-width-input" path="cd_reg" /></td>
</tr>
<tr>
<td>Date début :</td>
<td><form:input type="text" name="date" class="tcal" value="" path="dateAffect"/></td>
</tr>
<tr>
<td>Date fin :</td>
<td><form:input type="text" name="date" class="tcal" value="" path="dateAffect"/></td>
</tr>
<tr>
<td><input
class="button round blue image-right ic-right-arrow"
type="submit" value="Créer" /></td>
<td><input
class="button round blue image-right ic-right-arrow"
type="reset" value="Initialiser" /></td>
</tr>
</table>
</form:form>
控制器:
@RequestMapping(value="/fiche_service",method=RequestMethod.GET)
public ModelAndView Fiche_service(@ModelAttribute Activite activite,@ModelAttribute Etablissement etabl,ModelMap model) {
Agent ag = new Agent();
return new ModelAndView("FicheService","agent",ag);
}
激活POJO:
public class Activite {
int code_act;
String cd_modaff;
String cd_etab;
String fonction;
int ppr;
String CINA;
String CINN;
public Activite() {
super();
}
//getters and setters ....
}
Etablissement POJO
public class Etablissement {
String code_etab;
String code_gipe;
String noml;
String noma;
String cd_orgTutel;
String cd_reg;
String cd_prov;
String cd_com;
String cd_mil;
String cd_cauto;
String adressel;
String cp;
String villel;
//getters and sitters
}
答案 0 :(得分:1)
我认为每个表单只能有一个命令对象。如果您有多个表单,则只能有多个命令对象。您是否需要同一表单的多个命令对象?如果你这样做,我建议在一个类中组合所需的属性,因为它们属于同一个表单。