Struts2.0 Action自己的认识
2009-09-07 22:49
357 查看
举例:
public class ProductAction extends ActionSupport {
private ProductManager productManager;
private Product product;
private String queryString;
public void setQueryString(String queryString){
this.queryString=queryString;
}
public Product getProduct() {
return product;
}
/*public void setProduct(Product product) {
this.product = product;
}*/
public void setProductManager(ProductManager productManager){
this.productManager=productManager;
}
public String insert(){
System.out.println("---product="+product+"---");
System.out.println("---product.name="+product.getName()+"---");
productManager.insertProduct(product);
return SUCCESS;
}
public String list() {
System.out.println("---list---");
Map request = (Map) ActionContext.getContext().get("request");
request.put("list", productManager.findProducts());
return SUCCESS;
}
}
Input.jsp
<s:form action="insert.action" method="post" >
<s:textfield name="product.name" label="商品名称"/>
<s:textfield name="product.price" label="商品价格"/>
<s:textfield name="product.brand" label="商品品牌"/>
<s:textarea name="product.description" label="商品描述"/>
<s:submit></s:submit>
</s:form>
List.jsp
<s:iterator value="#request.list" id="product">
<tr>
<td><s:property value="#product.id"/></td>
<td><s:property value="#product.name"/></td>
<td><s:property value="#product.price"/></td>
<td><s:property value="#product.brand"/></td>
<td><s:property value="#product.description"/></td>
</tr>
</s:iterator>
如果给getProduct加上注释,则表单提交过来的数据显示为空,即Form无法提交数据到Action中。从而可知,在Action中,是通过getter方法来获得表单数据的。
Action除了从Form获得数据外,还将处理的数据传递出去(供页面展示)。如:request.put("list", productManager.findProducts());
将结果集放在request.list中,在页面list.jsp通过request.list来获得数据。
Action中将数据当做一个对象或者一个容器(List)传给页面。
1. 当只传递一个对象到显示页面时。
public String updatepre(){
product = productManager.findProdcut(product.getId());
return SUCCESS;
}
<s:textfield name="product.name" value="%{product.name}" label="商品名称"/>
2. 当传递一个容器到显示页面时。
request.put("list", productManager.findProducts());
<s:iterator value="#request.list" id="product">
参考:http://www.360doc.com/content/081124/20/69543_1994053.html
public class ProductAction extends ActionSupport {
private ProductManager productManager;
private Product product;
private String queryString;
public void setQueryString(String queryString){
this.queryString=queryString;
}
public Product getProduct() {
return product;
}
/*public void setProduct(Product product) {
this.product = product;
}*/
public void setProductManager(ProductManager productManager){
this.productManager=productManager;
}
public String insert(){
System.out.println("---product="+product+"---");
System.out.println("---product.name="+product.getName()+"---");
productManager.insertProduct(product);
return SUCCESS;
}
public String list() {
System.out.println("---list---");
Map request = (Map) ActionContext.getContext().get("request");
request.put("list", productManager.findProducts());
return SUCCESS;
}
}
Input.jsp
<s:form action="insert.action" method="post" >
<s:textfield name="product.name" label="商品名称"/>
<s:textfield name="product.price" label="商品价格"/>
<s:textfield name="product.brand" label="商品品牌"/>
<s:textarea name="product.description" label="商品描述"/>
<s:submit></s:submit>
</s:form>
List.jsp
<s:iterator value="#request.list" id="product">
<tr>
<td><s:property value="#product.id"/></td>
<td><s:property value="#product.name"/></td>
<td><s:property value="#product.price"/></td>
<td><s:property value="#product.brand"/></td>
<td><s:property value="#product.description"/></td>
</tr>
</s:iterator>
如果给getProduct加上注释,则表单提交过来的数据显示为空,即Form无法提交数据到Action中。从而可知,在Action中,是通过getter方法来获得表单数据的。
Action除了从Form获得数据外,还将处理的数据传递出去(供页面展示)。如:request.put("list", productManager.findProducts());
将结果集放在request.list中,在页面list.jsp通过request.list来获得数据。
Action中将数据当做一个对象或者一个容器(List)传给页面。
1. 当只传递一个对象到显示页面时。
public String updatepre(){
product = productManager.findProdcut(product.getId());
return SUCCESS;
}
<s:textfield name="product.name" value="%{product.name}" label="商品名称"/>
2. 当传递一个容器到显示页面时。
request.put("list", productManager.findProducts());
<s:iterator value="#request.list" id="product">
参考:http://www.360doc.com/content/081124/20/69543_1994053.html
相关文章推荐
- Struts 2.0的Action讲解
- Struts2.0 xml文件的配置(package,namespace,action)
- Struts2.0 去掉action后缀名
- Struts 2.0的Action讲解
- 关于Struts 2.0的action
- struts2.0 Action
- Struts2.0之Action详解(二)
- struts2.0-注意事项1则-action中setter-getter方法与bean class文件的getter-setter不同!!
- Struts2.0中ActionInvocation使用
- Struts2.0 Action
- struts2.0 的action的继承类或接口汇总
- Struts 2.0的Action讲解
- Struts 2.0的Action讲解
- Struts 2.0的Action详解
- struts2.0中spring配置文件中action的属性 scope="prototype" .
- jsp:forward 到struts2.0 action无效
- Struts2.0之Action详解(一)
- Struts 2.0的Action讲解
- Struts 2.0的Action讲解
- Struts2.0标签使用之action