【JSP/Servlet】后台如何获取复选框或可选属性的同名参数

感觉自己jsp/servlet部分学的太差了……今天突然想到还有这种操作,遂分享之

比如有些时候我们需要使用复选框发送同名数据的时候,后台接收参数是个麻烦事,还有可选属性也是如此

有丰富经验的会想到api中早就有这个方法了,我们可以使用request.getParameterValues("参数名"); 来获取这个参数的字符串数组

比如前台表单的数据为:

<form aciton="test.action" method="post">
    I have a bike:
<input type="checkbox" name="vehicle" value="Bike" checked="checked" />
<br />
I have a car: 
<input type="checkbox" name="vehicle" value="Car" />
<br />
I have an airplane: 
<input type="checkbox" name="vehicle" value="Airplane" />
<br /><br />
<input type="submit" value="Submit" />
</form> 

接收的时候需要很多同名参数,request.getParameter("vehicle"); 已经不能满足我们的需求了,只能接收一条,具体是第一条还是最后一条我没有测试……翻看Java ee api 才发现还有request.getParameterValues(); 供我们使用这样就可以这样实现了:

import java.lang.StringBuffer;

/**
* 用的是struts2,都一样
* 接受多个相同参数名数据……
*这里就只写把这个前台参数接收过来转成字符串的方法了
*/
public void receiveMsg(){
   String [] vehicles = request.getParameterValues("vehicle");
   StringBuffer buf = new StringBuffer(); 
   for(String vehicle :   vehicles){
      buf.append(vehicle);
  }
  String vehiclesString = buf.toString();
  System.out.println(vehiclesString);    
}

仅供参考,如有错误感谢批评指正

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东北小狐狸-Hellxz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值