Servlet使用对象接收jsp传递过来的数据的方法

  前言:C#中视图请求控制器的方法时传递了一系列数据,控制器中的方法是以键值对的形式来接收这些数据的。你可以直接用键的名字来接收这些数据,当然数据类型一定要对应上。如果传递的数据很多,以键的名字这种方式需要写很多参数来接收那些数据,这时就可以直接用一个包含有那些键的名字的成员字段的对象来进行接收,这样就可以不用写那么多参数来接收数据了。在Java中这样则不行,如果你没有使用特殊的传递数据的方式或接收数据的方式,它会将你传递过来的数据通通转成字符串类型,如果你传递一个object数据对象到servlet后使用getParameter(string arg0)获取数据,打印出来的结果可能就是一个字符串object或者null。网上已经有jar包已经实现了可以用对象接收数据,我这里是自己根据某一个工具方法改编出来,下面介绍一下我的方法。
  下面是传递给Servlet的数组数据,包含两条数据的内容:我这里使用的是post提交:传参直接使用键值对的形式传过去,如:{ data : okData }。okData就是下图的数组。
在这里插入图片描述
  Servlet中使用写好的方法(requestBean)处理数据并直接使用一个集合接收:

List<SellDetail> details = WebDataUtils.requestBean(request,SellDetail.class);

  这个方法的代码很简单,思路主要就是通过键来找值然后把值赋给对象中的某个成员。这里还用到了一个jar包,主要是使用这个jar包的一个方法给对象的某个成员赋值,这个方法需要接受三个参数,第一个参数就是你用来接收数据的对象,第二个参数是这个对象中的某个成员的名称,第三个参数就是要给成员赋的值了。当然你要是不想用jar包也可以自己去写一个反射给它赋值。Jar包的名称:commons-beanutils-1.9.2.jar,
设置值的方法:BeanUtils.setProperty(Object bean, String name,Object value);
  下面数贴出具体的代码:

public static <T> List
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值