页面提交 string数组和list对象集合举例
继前面一篇 springMVC 页面中多个对象的数据绑定 ,本文主要介绍如果实现复杂类型对象的数据绑定,比如前文中的父级对象CourseInfo 中增加:String[] times , List<Student> studentList 这两个复杂类型属性,页面中数据如何才能准确绑定到对象上呢?
参考来源:http://www.360doc.com/content/16/1022/15/37520906_600479377.shtml
【类】
public class CourseInfo {
private Course course;
private Teacher teacher;
private String[] times;
private List<Student> studentList;
}
public class Student extends IdEntity {
private String name;
private String email;
private String className;
}
【页面】
<form:form id="input-form" modelAttribute="courseInfo"
action="${ctx}/demo/course.do?method=save" method="post">
<input type="hidden" name="id" value="${course.id}" />
<fieldset class="prepend-top">
<legend>课程信息</legend>
<div id="messageBox" class="error-msg" style="display: none">输入有误,请先更正。</div>
<div>
<label for="course.name" class="field">课程名称:</label>
<input
type="text" id="course.name" name="course.name" size="20"
value="${courseInfo.course.name}" class="required" />
</div>
<div>
<label for="course.description" class="field">课程介绍:</label>
<input
type="text" id="course.description" name="course.description"
size="20" value="${courseInfo.course.description}" class="required" />
</div> <div>
<label for="teacher.name" class="field">老师姓名:</label>
<input
type="text" id="teacher.name" name="teacher.name" size="20"
value="${courseInfo.teacher.name}" class="required" />
</div>
<div>
<label for="teacher.email" class="field">老师Email:</label>
<input
type="text" id="teacher.email" name="teacher.email" size="20"
value="${courseInfo.teacher.email}" class="required" />
</div>
<div>
<label for="times" class="field">上课时间:</label>
<input type="text" id="times[0]" name="times" size="20" value="周一" class="required" />
<input type="text" id="times[1]" name="times" size="20" value="周三" class="required" />
<input type="text" id="times[2]" name="times" size="20" value="周五" class="required" />
</div> <div>
<label for="studentList[0].name" class="field">学生1姓名:</label>
<input type="text" id="studentList[0].name" name="studentList[0].name" size="20" value="学生1姓名" class="required" />
</div>
<div>
<label for="studentList[0].email" class="field">学生1Email:</label>
<input type="text" id="studentList[0].email" name="studentList[0].email" size="20" value="学生1Email" class="required" />
</div>
<div>
<label for="studentList[1].name" class="field">学生2姓名:</label>
<input type="text" id="studentList[1].name" name="studentList[1].name" size="20" value="学生2姓名" class="required" />
</div>
<div>
<label for="studentList[1].email" class="field">学生2Email:</label>
<input type="text" id="studentList[0].email" name="studentList[1].email" size="20" value="学生2Email" class="required" />
</div>
</fieldset>


页面提交 string数组和list对象集合举例的更多相关文章
- 前端页面传来数组,后台用对象集合list接收数据的写法
//保存页面显示应用$("#save").click(function(){ var data = [{"applicationtypeid":"65 ...
- springMVC接受对象集合,name数组
这两天开发遇到一个很常见的问题,即使自己一直没遇见过,不过之前看过是实现接受对象集合的代码,只不过没注意罢了 推荐一篇文章 直接贴代码吧 public class Person { private S ...
- Java技巧——将前端的对象数组通过Json字符串传到后端并转换为对象集合
Java技巧——将前端的对象数组通过Json字符串传到后端并转换为对象集合 摘要:本文主要记录了如何将将前端的对象数组通过Json字符串传到后端,并在后端将Json字符串转换为对象集合. 前端代码 前 ...
- SpringMVC,SpringBoot使用ajax传递对象集合/数组到后台
假设有一个bean名叫TestPOJO. 1.使用ajax从前台传递一个对象数组/集合到后台. 前台ajax写法: var testPOJO=new Array(); //这里组装testPOJO数组 ...
- ArrayList集合、String[]数组、String字符串
数组初始化时候必须指定长度,而ArrayList是动态数组,可以根据实际内容改变 //声明stsArr数组并初始化 String[] strArr = new String[]{ "aaa& ...
- UI自动化测试(三)对页面中定位到的元素对象做相应操作
前两天分别讲述了UI自动化测试基础以及对页面元素该如何进行定位,这一篇自然就是对定位到的页面元素对象进行相应操作啦. 阅读目录 1.常用操作元素对象的方法 2.鼠标事件操作 3.键盘事件操作 4.We ...
- servlet自动获取前端页面提交数据
servlet自动获取前端页面jsp提交数据 以下是本人在学习过程中,因前端页面提交参数过多,后台servlet封装实体类过于麻烦而写的一个工具类,应用于jsp/servlet数据提交后,基于MVC+ ...
- MVC传递数据-传递对象或对象集合
前言 本文主要介绍从View(或者js)文件向Controller提交对象或者对象集合.比方.将表格中的一行数据作为一个对象提交.或将多行数据作为一个集合提交到Controller. 回想 从View ...
- JSon_零基础_008_将JSon格式的"数组"字符串转换为List集合
将JSon格式的"数组"字符串转换为List集合. 应用此技术从一个json对象字符串格式中得到一个java对应的对象. JSONObject是一个“name.values”集合, ...
随机推荐
- apache——(OS 10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 : AH00072: make_sock: could not bind to address [::]:443
问题:命令行运行httpd.exe时报错 (OS 10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次. : AH00072: make_sock: could not bind t ...
- PAT L3-012 水果忍者
占个坑,等自己数学好一点以后再来重新把这个题写一遍 附上链接 附上大牛代码: #include <stdio.h> #include <algorithm> #define I ...
- 05_zookeeper_原生API使用1(更新)
1. java方式操作远端zookeeper集群概述 步骤:下载zookeeper压缩包并解压, 创建java工程,导入zookeeper相关jar包 (1)下载zookeeper压缩包 http:/ ...
- python列表解析进阶
如果要获得一个(元素为整数的)列表里面的偶数,很容易想到列表解析: [i for i in nums if i%2==0] 但是如果要使列表的长度不变,让奇数用0来填充,可能你会直接写: [i for ...
- winform无边框窗体点击任务栏最小化
protected override CreateParams CreateParams { get { const int WS_MINIMIZEBOX = 0x00020000; // Winus ...
- maven笔记(3)
项目管理利器(Maven)——Pom.xml解析 <name>项目的描述名</name> <url>项目的地址</url> <descriptio ...
- Dapper 条件语句(Where) 中参数使用
public static List<ECInput> GetECInputList(DateTime beginDate,DateTime endDate,string[] barcod ...
- SQLServer 2005 和自增长主键identity说再见——NEWSEQUENTIALID()
``code 在SQLServer2005环境下,表的主键应该怎样设计. 目前主要用到的主键方案共三种 自动增长主键 手动增长主键 UNIQUEIDENTIFIER主键 1.先说自动增长主键,它的优点 ...
- 原生javascript-无间缝滚动,封装
目前支持的是竖向与横向滚动 http://lgy.1zwq.com/marScroll/ 现在分析下无间缝实现的基本思路(竖向例子): HTML结构: <div id="marScro ...
- 从centos6升级到centos7步骤
1. 备份 2. 安装依赖列表 yum源文件/etc/yum.repos.d/upgrade.repo,内容为 [upgrade] name=upgrade baseurl=http://dev.ce ...