我正在使用具有速度的Spring MVC。
我很好奇如何将地图键值从控制器发布到另一个站点。
@RequestMapping(value = "/test/postMap.*", method = RequestMethod.GET)
public String postMap(HttpServletRequest request, HttpServletResponse response,
Model model) throws Exception {
model.addAttribute(receiver, "solikang.com"); // not in real, just for example
model.addAttribute(id, "solikang");
model.addAttribute(pwd, "1234");
return "postThis";
}
postThis.vm
<form id="oneItem" method="post" action=${receiver} >
<input type="hidden" name="id" value="$!{id}" />
<input type="hidden" name="pwd" value="$!{pwd}" />
</form>
<script type="text/javascript" language="JavaScript">
document.getElementById("oneItem").submit();
</script>
在'postThis.vm'中,我修改了属性名称,如'id'和'pwd'。
这样可行,但如果还有其他参数,例如'name','email'。我必须修改postThis.vm来处理这些参数。
我认为,使用模型映射和for循环,无需修改。
所以,我想知道如何在速度上读取模型作为地图。
如果您有任何想法或经验,请告诉我。
提前致谢。
答案 0 :(得分:1)
您已经拥有的一个选项应该是将属性作为地图添加到模型中。所以在java中
map = new HashMap();
map.put("id", "solikang")
map.put("pwd", "1234")
map.put("email", "something@example.com");
model.addAttribute("data", map);
然后以速度
#foreach ($key in $data.keySet())
<input type="hidden" name="$key" value="$data.get($key)">
#end
这样的事情应该有用。但我不确定这是“最好”的方式。