我需要使用post和curl方法将表单从php发送到java。 当我提交表单时,我遇到了在php中获取对象列表的问题。我想知道是否可以像在Spring MVC中那样(在表单中指定属性名称)
<form method="post" action="group_create.php">
<div>
Name: <input type="text" name="name" />
<br />
<input type="text" name="users[0].name" value="753" />
<br />
<input type="text" name="users[1].name" value="752" />
<br />
<input type="submit" value="Save" />
</div>
</form>
编码方法:
<?php
http_build_query($_POST);
?>
当前卷曲网址:
javaserver/app/groups/create?name=Administrator&users[0]=Tom&users[1]=Myke
必要的卷曲网址:
javaserver/app/groups/create?name=Administrator&users[0].name=Tom&users[1].name=Myke
我的DTO:
public class GroupDTO {
private String name;
private List<UserDTO> users;
public GroupDTO()
{
this.users = new ArrayList<UserDTO>();
}
}
public class UserDTO {
private String name;
}
Spring MVC Controller:
@Controller
@RequestMapping("secure/groups")
public class GroupsController {
@RequestMapping(value = "create", method = RequestMethod.POST)
public @ResponseBody ModelMap create(GroupDTO dto)
{
ModelMap map = new ModelMap();
//CODE TO DO ANYTHING
return map;
}
}
答案 0 :(得分:1)
改变这个:
<form method="post" action="group_create.php">
<div>
Name: <input type="text" name="name" />
<br />
<input type="text" name="users[0].name" value="753" />
<br />
<input type="text" name="users[1].name" value="752" />
<br />
<input type="submit" value="Save" />
</div>
</form>
对此:
<form method="post" action="group_create.php">
<div>
Name: <input type="text" name="name" />
<br />
<input type="text" name="users[0]" value="753" />
<br />
<input type="text" name="users[1]" value="752" />
<br />
<input type="submit" value="Save" />
</div>
</form>
表单不需要“.name”部分才能正常运行。