读书人

struts2中批量打包对象(Bean)

发布时间: 2012-10-07 17:28:51 作者: rapoo

struts2中批量封装对象(Bean)

package product;import java.io.Serializable;import java.util.Date;/** * 产品持久化类 * @author lijunjie * */public class Product implements Serializable {private String name;private double price;private Date dateOfProduction;public String getName() {return name;}public void setName(String name) {this.name = name;}public double getPrice() {return price;}public void setPrice(double price) {this.price = price;}public Date getDateOfProduction() {return dateOfProduction;}public void setDateOfProduction(Date dateOfProduction) {this.dateOfProduction = dateOfProduction;}}

?

?

第二步:然后,在同上的包下添加ProductConfirm.java类,代码如下

?

?

package product;import java.util.List;import com.opensymphony.xwork2.ActionSupport;/** * 商品确认类 * @author lijunjie * */public class ProductConfirm extends ActionSupport {private List<Product> products;public List<Product> getProducts() {return products;}public void setProducts(List<Product> products) {this.products = products;}@Overridepublic String execute() throws Exception {for(Product p : products){System.out.println(p.getName()+"--"+p.getPrice()+"--"+p.getDateOfProduction());}return SUCCESS;}}

?

?

?

?第三步:再在struts.xml文件中配置ProductConfirm Action:

    <package name="product" extends="struts-default">    <action name="ProductConfirm" name="code"><%@page contentType="text/html;charset=UTF-8" %><%@taglib prefix="s" uri="/struts-tags" %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head>    <title>Add Product</title>  </head>    <body>   <s:form action="ProductConfirm" theme="simple">    <table><tr><td>商品名称</td><td>商品价格</td><td>生产日期</td></tr><s:iterator value="new int[3]" status="stat"><tr><td><s:textfield name="%{'products['+#stat.index+'].name'}"/></td><td><s:textfield name="%{'products['+#stat.index+'].price'}"/></td><td><s:textfield name="%{'products['+#stat.index+'].dateOfProduction'}"/></td></tr></s:iterator> <tr><td colspan="3"><s:submit value="提交"/></td></tr>     </table>   </s:form>  </body></html>

?

?

第五步:在WebRoot下新建showproducts.jsp:

?

?

<%@page contentType="text/html;charset=UTF-8" %><%@taglib prefix="s" uri="/struts-tags" %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head>    <title>显示商品</title>  </head>    <body>   <table border="1">   <tr>   <td>商品名称</td>   <td>商品价格</td>   <td>生产日期</td>   </tr>   <s:iterator value="products" status="stat">   <tr><td><s:property value="name"/></td><td>$<s:property value="price"/></td><td><s:property value="dateOfProduction"/></td>      </tr>   </s:iterator>   </table>  </body></html>

?

运行结果如图:


struts2中批量打包对象(Bean)
?
struts2中批量打包对象(Bean)
?在addproducts.jsp的<s:textfield>的name为“%{'products['+#stat.index+'].name'}”,%{exp}格式表示使用OGNL表达式,上述表达式的相当于<%= "products[" + stat.index + "].name" %>

1 楼 第八号当铺 2011-02-28 谢啦!很受用! 2 楼 yjwf520199 2012-02-02 从客户端传数据到服务装怎样封装呢?
如 url?student.name=张三&student.age=20&student.name=李四&student.age=20 ,
怎样封装成一个 List<Student> 对象?

读书人网 >软件架构设计

热点推荐