文档章节

集合的数据绑定

Geeyu
 Geeyu
发布于 2017/02/25 19:45
字数 328
阅读 1
收藏 0

慕课网《SpringMVC数据绑定入门》笔记

List

  将表单数据绑定到后台List对象,只能绑定到类型是List的属性上面

url:...?users[0].name=Tom&users[20].name=Jerry

//这种方法是错误的
[@Controller](https://my.oschina.net/u/1774615)
public String list(List<User> users){
	return ...
}

  需要定义一个对象来接

class UsersListForm{
	private List<User> users;
}

[@Controller](https://my.oschina.net/u/1774615)
public String list(UsersListForm userListForm){
	//表单数据会绑定到userListForm的users属性上
	return ...
}

  需要注意的是,users接收到的数组大小,例如上面虽然只有两个name,但是后台的users.size()却是20.

Set

  相对于List,Set需要先初始化,在实际应用中,Set大部分是用于对象的重复判断和排除重复。

class UserSetForm{
	private Set<User> users;
	//初始化
	static{
		users.add(user1);
		users.add(user2);
		...
	}
}

[@Controller](https://my.oschina.net/u/1774615)
public String set(UserSetForm userSetForm){
	//表单数据会绑定到userSetForm的users属性上
	return ...
}

  可以重写hashCode()和equals()方法,达到排重的目的。但SpringMVC对Set支持不友好,必须先初始化users的size(),如果不等于表单提交的size()就会报异常,因此对于集合,还是用List 的好。

Map

url:...?users["key"].name=Tom&...

class UserMapForm{
	private Map<String, User> users;
}

[@Controller](https://my.oschina.net/u/1774615)
public String set(UserMapForm, userMapForm){
	//表单数据会绑定到userMapForm的users属性上
	return ...
}

© 著作权归作者所有

共有 人打赏支持
上一篇: Json XmL数据绑定
下一篇: @InitBinder
Geeyu
粉丝 2
博文 56
码字总数 30168
作品 0
昌平
私信 提问
Data Binding in UI ( UI 上的 Data Binding )

概述 IOS和Android并没有与Windows商店应用类似的数据绑定的机制,他们的UI更新通常用以下方法实现: IOS IOS通常在ViewController中直接操作UI控件,需要注意的是在非主线程操作UI时,可以用...

小小编辑
2013/12/26
996
0
一句代码实现批量数据绑定[下篇]

《上篇》主要介绍如何通过DataBinder实现批量的数据绑定,以及如何解决常见的数据绑定问题,比如数据的格式化。接下来,我们主要来谈谈DataBinder的设计,看看它是如何做到将作为数据源实体的...

长平狐
2012/09/04
86
0
spring 接收json数据 请教

请先参照附图的设计 和前台页面(别笑话我,笑话也没事 :-) ) spring 的controller的方法: @RequestMapping(value = "jsoncreate", method = RequestMethod.POST) @ResponseBody public Ma...

岽茗
2016/01/22
961
10
WPF 中双向绑定通知机制之ObservableCollection使用

msdn中 ObservableCollection 类 表示一个动态数据集合,在添加项、移除项或刷新整个列表时,此集合将提供通知。 在许多情况下,所使用的数据是对象的集合。 例如,数据绑定中的一个常见方案...

Andrewniu
09/03
0
0
通过实例模拟ASP.NET MVC的Model绑定的机制:集合+字典

在本系列的前面两篇文章(《简单类型+复杂类型》、《数组》)我们通过创建的实例程序模拟了ASP.NET MVC默认使用的DefaultModelBinder对简单类型、复杂类型以及数组对象的Model绑定。现在我们...

长平狐
2012/09/04
299
0

没有更多内容

加载失败,请刷新页面

加载更多

spring学习笔记(二)spring 事件的使用

spring 中的事件 spring事件通过订阅发布 可以解耦操作 可以同步 可以异步 步骤 编写事件 通过继承org.springframework.context.ApplicationEvent 来编写事件 public ApplicationEvent(Obj...

NotFound403
昨天
11
0
特斯拉车主成功破解了自己Model 3汽车

据汽车博客Electrek消息,一位特斯拉车主成功破解了自己Model 3汽车,还在此基础上运行了Ubuntu。 这位叫trsohmers的网友表示,“功劳大多要归到Ingineerix的头上,他花了数月才找到初始的那...

linuxCool
昨天
3
0
Gitbook : random errors when using gitbook plugin on running "gitbook serve"

在执行gitbook serve时,会有不定的失败错误 参考问题 :#1309 解决方案: 更新gitbook版本,这个问题似乎是3版本的问题 , 官方也不打算在这个版本解决了。 更新 到最新版本后, 不再出现问...

ol_O_O_lo
昨天
1
0
提灯照暗,向内自省——《中国文化的深层结构》读书笔记3800字

提灯照暗,向内自省——《中国文化的深层结构》读书笔记3800字: 作者:王健茜;断断续续一个多月才读完了《中国文化的深层结构》,这并不是一本难懂的书,之所以读得慢,源于对书中观点的思...

原创小博客
昨天
3
0
高德地图-行政区域接口

1、获取全国各省信息 https://restapi.amap.com/v3/config/district?extensions=all&key=应用Key&s=rsv3&output=json 2、获取下级行政区域信息 https://restapi.amap.com/v3/config/distric......

voole
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部