springmvc form多对象映射 数据绑定 多对象绑定
2012-09-21 14:18
387 查看
在使用springmvc的时候,有时候我们需要form能提交多个对象,比如我们要上火车,一个用户需要一张票,在设计的时候用户类里面有一个属性是票务(Tickets),在form表单提交的时候需要同时提交用户信息和票务信息,我试验了几次,发现了一种解决办法,这个办法应该是spring设计人员已经考虑了的
form.jsp:
<form:form modelAttribute="userInfo,tickets" action="enter" method="post" id="enterForm">
<label for="phone">手机号:</label>
<input type="text" name="userInfo.phone" id="phone" value="" />
<label for="trainNumber">车次:</label>
<input type="text" name="tickets.trainNumber" id="trainNumber" value="" />
</form:form>
--------------------------------------------------------------------------------------------------------------------------------------------------------
FormController.java
@RequestMapping(value="/",method=RequestMethod.GET)
public ModelAndView setForm(Model model){
model.addAttribute("userInfo",new UserInfo());
model.addAttribute("tickets",new Tickets());
return new ModelAndView("index");
}
@RequestMapping(value="/enter",method=RequestMethod.POST)
public ModelAndView enter(@ModelAttribute("userInfo") UserInfo userInfo,@ModelAttribute("tickets") Tickets tickets){
userInfo.setTickets(tickets);
return new ModelAndView("main");
}
通过这种方式就可以达到提交多个form的目的。
form.jsp:
<form:form modelAttribute="userInfo,tickets" action="enter" method="post" id="enterForm">
<label for="phone">手机号:</label>
<input type="text" name="userInfo.phone" id="phone" value="" />
<label for="trainNumber">车次:</label>
<input type="text" name="tickets.trainNumber" id="trainNumber" value="" />
</form:form>
--------------------------------------------------------------------------------------------------------------------------------------------------------
FormController.java
@RequestMapping(value="/",method=RequestMethod.GET)
public ModelAndView setForm(Model model){
model.addAttribute("userInfo",new UserInfo());
model.addAttribute("tickets",new Tickets());
return new ModelAndView("index");
}
@RequestMapping(value="/enter",method=RequestMethod.POST)
public ModelAndView enter(@ModelAttribute("userInfo") UserInfo userInfo,@ModelAttribute("tickets") Tickets tickets){
userInfo.setTickets(tickets);
return new ModelAndView("main");
}
通过这种方式就可以达到提交多个form的目的。
相关文章推荐
- jsp页面的ajax和form表单提交后接收数据的区别(SpringMVC控制器返回Map对象)
- springMVC中复杂嵌套对象、List等集合类型数据绑定
- springmvc如何将form表单中的对象类型绑定
- SpringMVC数据绑定全面示例(复杂对象,数组等)
- springMVC对简单对象、Set、List、Map的数据绑定和常见问题.
- SpringMVC数据绑定1 之 基本对象、数组、包装类与集合的绑定
- SpringMVC接收Json数据并绑定对象
- springMVC中多个对象的数据绑定
- SpringMVC - 页面form表单绑定对象
- springMVC对简单对象、Set、List、Map的数据绑定和常见问题.
- springMVC之对象中的基本类型数据绑定遇到的问题
- springMVC对简单对象,Set,List,Map的数据绑定及类型转换
- springMVC对简单对象、Set、List、Map的数据绑定和常见问题(一)
- Springmvc-将前端数据映射成JAVA对象接收实例
- SpringMVC数据绑定全面示例(复杂对象,数组等)
- springMVC对简单对象、Set、List、Map的数据绑定和常见问题(二)
- springMVC中复杂嵌套对象、List等集合类型数据绑定
- springMVC对简单对象、Set、List、Map的数据绑定和常见问题(一)
- cassandra 数据到Java对象的映射绑定
- springMVC 自动将form 提交对象型数据转为Object对象数据