SpringMvc绑定字符串数组和List参数

前言

  • 上篇文章小编简单介绍了SpringMvc中默认支持的参数绑定和pojo参数绑定,现在小编继续介绍字符串数据和List绑定。

1、字符串数组

需求

  • 当我们在页面批量删除table中的数据的时候,往往是先获取table中每一行数据的id,然后将id传到后台,最后在数据库中删除,下面以删除学生为例。

jsp代码

<form action="deletestu.action" method="post">
 <input type="submit" value="批量删除"/> 
<table width="100%" border=1>
  <tr>
    <td>选择</td>
    <td>姓名 </td>
    <td>年龄</td>
    <td>出生日期</td>
    <td>操作</td>
  </tr>
 <c:forEach items="${list}" var="stu">
    <tr> 
    <td><input type="checkbox" name="deleteid" value="${stu.id }"/></td>
    <td>${stu.name } </td>
    <td>${stu.age } </td>
    <td><fmt:formatDate value="${stu.birthday }" pattern="yyyy-MM-dd"/> </td>
    <td><a href="editstudent/${stu.id}.action">修改</a></td>
  </tr>
 </c:forEach>
</table>
</form>

Handler接收ids数组

@RequestMapping("/deletestu")
public String deleteStu(String [] deleteid) throws Exception{
    System.out.println(deleteid);
    return "success";
}

2、List绑定

定义vo对象

public class StudentScore {
    private String coursename;
    private Float score;
    public String getCoursename() {
        return coursename;
    }
    public void setCoursename(String coursename) {
        this.coursename = coursename;
    }
    public Float getScore() {
        return score;
    }
    public void setScore(Float score) {
        this.score = score;
    }

}

public class UserVo {
    //学生成绩 信息
    private List<StudentScore> scores;

    public List<StudentScore> getScores() {
        return scores;
    }

    public void setScores(List<StudentScore> scores) {
        this.scores = scores;
    }
}

jsp代码

<form action="${pageContext.request.contextPath}/stu/saveStudentList.action" method="post">
    课程名:<input type="text"name="scores[0].coursename"/>成绩:<input type="text"name="scores[0].score"/><br/>
    课程名:<input type="text"name="scores[1].coursename"/>成绩:<input type="text"name="scores[1].score"/><br/>
    课程名:<input type="text"name="scores[2].coursename"/>成绩:<input type="text"name="scores[2].score"/><br/>
    <input type="submit" value="提交 "/> 
</form>

Handler代码(用List接收)

@RequestMapping("/saveStudentList")
public String saveStudentList(UserVo userVo) throws Exception{
    System.out.println(userVo);
    return "success";
}
  • 先定义一个StudentScore对象,设置两个属性,score和coursename,然后再定义一个vo对象UserVo,这个对象中定义一个List<StudentScore> scores,其名字一定要和Jsp中的scores[0].coursename的scores对应,StudentCourse中的coursename和Jsp中的scores[0].coursename对应,这样才能正确的将jsp中的数据传入Handler中。

小结

以上便是小编总结SpringMvc传递参数的基础知识,下一篇博客小编介绍

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 13
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值