您的位置:首页 > 编程语言 > Java开发

springMVC绑定数据的方式

2015-06-18 16:20 393 查看
数据绑定和类型转换,就是把请求中的参数转换成对应的变量,提供给后续的服务处理。HTTP请求只能传递字符串类型的参数,但是后台程序需要的变量类型就会多种多样了,比如int, long甚至是javabean这种自定义类型,如果框架能帮我们自动处理这些类型转换,就再好不过了。

SpringMVC中,最常使用的参数绑定方式是@RequestParam,不管是URL上的queryParam还是POST body中的FormParam都可以使用这个注解获得,并且会自动根据参数的类型进行类型转换。

比如,@RequestParam("priority") int priority,就会自动从请求中获得名为priority的参数,并转换成int类型,后台方法中可以直接使用。

也可以获得一个列表,比如前台传递的参数是selectedItem=1&selectedItem=2,可以使用@RequestParam("selectedItem") List<Long> selectedItem,直接把多个同名参数转换成一个列表。

如果某个参数可能不传递给后台,可以使用@RequestParam(value = "id", required = false) Integer id,那么在没有传递参数id时,就会传递null。

如果想获得请求传递的所有参数,可以使用@RequestParam MultivalueMap parameterMap,parameterMap中包含的就是请求中的所有参数了。

如果想把参数id=1&name=Lingo的值传入对应的javabean中,也可以使用@ModelAttribute UserBase userBean,SpringMVC会自动根据参数名与javabean中属性名的对应关系,把参数值复制到javabean中,这在前台表单有几十个参数需要传递给后台的情况就十分有用了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: