(5)SpringMVC - 请求参数的绑定,绑定实体类型,绑定集合类型

本文详细介绍了SpringMVC中请求参数的绑定,包括基本数据类型、实体类型和集合类型的绑定。在请求参数绑定入门部分,阐述了如何将表单数据自动赋值给Controller方法的参数。接着,通过实例展示了如何将数据封装到JavaBean中,要求表单字段名与JavaBean属性名一致。最后,讨论了如何处理集合类型的数据,包括List和Map,并通过修改param.jsp文件和Controller方法,实现了数据的正确绑定和展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 请求参数绑定入门

表单提交数据,都是一组键值对

如果我们提交表单写的:username=hehe&password=123 (这些键值对)

我们把这个表单传过来,那么MVC框架怎么处理呢?

MVC框架 我们再Ctroller中会写方法
再方法中,假设我们写的是sayhello(String username,String password)

表单中:username=hehe&password=123
MVC框架:sayhello(String username,String password)

在这里插入图片描述
方法的参数和表单提交名称一致
MVC框架会自动的表单传的值赋值到方法的参数上

这就叫做请求参数的绑定!!!

请求参数的绑定支持的数据类型

  1. 基本数据类型和字符串类型
  2. 实体类型(javaBean)
  3. 集合数据类型(List,Map集合等)

再webapp底下写一个param.jsp文件(用这个来做一个请求参数的绑定)
然后写一个Controller
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
运行成功!
在这里插入图片描述

怎么把username这个值,传到后台去!
在这里插入图片描述

然后再对应的方法上加上String username,然后再里面输出一下结果

在这里插入图片描述
点击超链接:

在这里插入图片描述
启动运行之后,控制台显示内容:
在这里插入图片描述

那么我们加上password
在这里插入图片描述

在这里插入图片描述
点击超链接:
在这里插入图片描述
控制台输出结果:
在这里插入图片描述

注意: 表单里面的键值对和Controller类里面的方法的参数必须一致才行!

2 请求参数的绑定实体类型

进下来准备把数据封装到一个JavaBean里面去
首先创建一个Javabean的对象,一个类(实现序列化接口)

domain包下创建类:Account
然后 implements Serializable(实现序列化接口) , get,set方法
在这里插入图片描述

修改param.jsp文件:

        <form action="param/saveAccount" method="post">
            姓名: <input type="text" name=""/><br/>
            密码:<input type="text" name=""/><br/>
            金额:<input type="text" name=""/><br/>
            <input type="submit" value="提交"/>
        </form>

那么问题来了:提交这个表单,后台把这个数据往类里面封装
要求:这个name=“xxx” name指定的值要和Java里面的属性名字一样 这是机制!!通过写这个属性的名字 去找它的set方法 , 属性名字不对应 这个set方法就找不到这个数据

然后我们在Controller中添加这个方法
然后再参数中,我们写一个Account account
在这里插入图片描述
我们表单提交,默认就把数据全部封装到这个Account这个对象当中
然后输出结果

在这里插入图片描述

然后我们运行启动:
提交结果!!!
在这里插入图片描述

控制台打印结果:
在这里插入图片描述

注意:有时候我们有其他的一种情况 Account里面还有一个User的类型,意味这Account里面还包含了User的引用类型,那么又怎么给User这个属性传值呢?
在这里插入图片描述

我们再创建User这个类
在这里插入图片描述

Account里面重新生成get,set,toString方法!!

Account里面有一个User的属性,表单能不能提交数据的时候往User这个属性里面去封装呢?

怎么编写?

在这里插入图片描述

我们重新运行启动一下结果显示:

在这里插入图片描述
在这里插入图片描述

3 请求参数绑定集合类型

在Accunt类中,我们把User这个属性去掉

在这里插入图片描述

添加List,和map方法!!
在这里插入图片描述

修改param.jsp文件

在这里插入图片描述

在这里插入图片描述

运行结果显示!!!

在这里插入图片描述
成功!!!
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值