springmvc接收一个类多个对象数据(提交整个表格数据)

来源:互联网 发布:淘宝发货快递公司填错 编辑:程序博客网 时间:2024/06/08 04:12

有这么种需求,例如我需要提交整个表格数据进行数据更新,下面列出两种提交,一种是form直接提交,一直是异步ajax提交:

1.form提交方式:

jsp代码:主意input中name的写法,提交User数据:

<body>
    <form action="${contextPath}/user/testdemo" id="uform" method="post">
    <table >
    <td>用户名</td><td>密码</td><td>年龄</td>
    <td><input value="aa" name="users[0].username"/></td> 
<td><input value="aa" name="users[0].password"/></td> <td><input value="aa" name="users[0].age"/></td>

    <td><input value="bb" name="users[1].username"/></td><td><input value="bb" name="users[1].password"/></td> <td><input value="bb" name="users[1].age"/></td>

    </table>

   <input type="submit" value="提交"/>
    </form> 
</body>

springmvc后台接受方法:

@RequestMapping(value = "testdemo", method = RequestMethod.POST)
public @ResponseBody
String testdemo(HttpServletRequest request, Map<String, Object> map,UserList userlist) {UserList为接收数据
return "ok";
}

UserList类:

public class UserList {
    private List<User> users ;
    public List<User> getUsers() {
    return users;
    }
   public void setUsers(List<User> users) {
   this.users = users;
   }
   }

User类:省略了set get方法:

public class User {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(length = 32)
private int id;


@Column(length = 32)
private String username;


public String getUsername() {
return username;
}

public void setUsername(String username) {
this.username = username;
}

@Column(length = 32)
private String password;

@Column(length = 32)
private String age;

2.ajax异步提交方式:

jsp中代码:

<body>
    <form action="${contextPath}/user/testdemo" id="uform" method="post">
    <table >
    <td>用户名</td><td>密码</td><td>年龄</td>
    <td><input value="aa" name="users[0].username"/></td> <td><input value="aa" name="users[0].password"/></td> <td><input value="aa" name="users[0].age"/></td>
    <td><input value="bb" name="users[1].username"/></td> <td><input value="bb" name="users[1].password"/></td> <td><input value="bb" name="users[1].age"/></td>
    </table>
    </form> 
        <input type="button" value="提交" id="submitbtn"/>
</body>

js中代码:

<script>
$(function(){
$("#submitbtn").click(function(){
$.ajax({
type : 'post',
data : $("#uform").serialize(),
url : '${contextPath}/user/testdemo',
success : function(data) {
}
});
});
});

</script>

springmvc后台写法同第一种form提交一样不变。


0 0
原创粉丝点击