java-将对象数据从JSP传递到Spring Controller Post方法而不是GET方法
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java-将对象数据从JSP传递到Spring Controller Post方法而不是GET方法,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1897字,纯文字阅读大概需要3分钟。
内容图文
![java-将对象数据从JSP传递到Spring Controller Post方法而不是GET方法](/upload/InfoBanner/zyjiaocheng/661/2a49ffc0f4b7412e888dd7e60f27f0d7.jpg)
Spring Web MVC和开发Web应用程序的新手.
在某些情况下,我需要将数据值传递给Controller.
(注意:这里的数据值是bean对象的值)
Item Number Item Name Description Price
Item1018 Item1 Desc1 5.0 Add item to Cart
Item1019 Item2 Desc2 2.0 Add item to Cart
如上图所示,如果我单击“将项目添加到购物车”,则相应的项目编号应传递给控制器??.
viewmenu.jsp
<c:forEach items="${model.itemlists}" var="item">
<tr>
<c:if test = "${item.status == 'available'}">
<td><c:out value="${item.itemNo}"/> </td>
<td><c:out value="${item.itemName}"/></td>
<td><c:out value="${item.description}"/></td>
<td><c:out value="${item.price}"/></td>
<td><a href="<c:url value="additemtocart">
<c:param name='itemNumber' value="${item.itemNo}"/>
</c:url>">Add item to Cart</a> </td>
</c:if>
</tr>
</c:forEach>
CustomerController.java方法
@RequestMapping(value = "additemtocart",method = RequestMethod.GET)
public ModelAndView addItemToCart(@RequestParam("itemNumber") String itemno ) throws ClassNotFoundException, SQLException {
System.out.println("Username test in customer controller: "+userName);
}
该代码有效并且能够传递该值.但是按照GET和POST方法的标准(描述为here),我认为做错了.请建议是否还有其他方法可以将数据传递给POST方法.请给我建议.提前致谢
(这是我第一次在这里发布,如果有任何错误,请原谅)
解决方法:
将所有内容放入表单中(使用Spring的< form:form>标记).这会将表单过帐到显示该表单的相同URL.如果要发布到其他URL,请设置表单的action属性.
将您的“将商品添加到购物车”链接更改为“提交”按钮,因为您不应使用GET更改数据.您可以根据需要设置样式,并根据需要使其看起来像一个链接.
您的按钮应如下所示:
<button type=submit name=itemNumber value=xxx>Add item to Cart</button>
在您的控制器中,应该有一个带有请求映射的处理程序方法,如下所示:
@RequestMapping(value="additemtocart", method=RequestMethod.POST, params={"itemNumber"})
然后,您应该使用Post-Redirect-Get模式将其重定向回到产品列表.请参阅Spring MVC文档中的flashAttributes.
内容总结
以上是互联网集市为您收集整理的java-将对象数据从JSP传递到Spring Controller Post方法而不是GET方法全部内容,希望文章能够帮你解决java-将对象数据从JSP传递到Spring Controller Post方法而不是GET方法所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。