/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package com.dist.web.action;import java.sql.Connection;
import java.util.List;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import org.apache.commons.beanutils.BeanUtils;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;import com.dist.service.A1030Business;
import com.dist.service.B1010Business;
import com.dist.service.D1010Business;
import com.dist.system.db.conn.DBUtils;
import com.dist.system.tools.Tools;
import com.dist.web.form.A1050ActionForm;
import com.dist.web.form.B1020ActionForm;/**
* MyEclipse Struts
* Creation date: 08-10-2009
*
* XDoclet definition:
* @struts.action validate="true"
* @struts.action-forward name="all" path="/index.jsp"
*/
public class AllAction extends Action {
/*
* Generated Methods
*/ /**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
Connection conn=null;
B1020ActionForm b1020ActionForm = new B1020ActionForm();
A1050ActionForm a1050ActionForm = new A1050ActionForm();
System.out.println("cuolemei");
try{
conn=DBUtils.getConnection();
B1010Business bu=new B1010Business(conn,request);
List rows=bu.getthings();
if(rows.size()>0)
{
System.out.println(rows);
b1020ActionForm.setROWS(rows);
b1020ActionForm.getROWS();
}
D1010Business bu1=new D1010Business(conn,request);
List row=bu1.getMsg();
System.out.println(row.size());
if(row.size()>0)
{
a1050ActionForm.setROWS(row);
}
}catch (Exception e) {
e.printStackTrace();
}
finally{
DBUtils.close(conn);
}
return mapping.findForward("all");
}
}a1050ActionForm.setROWS(row);
在页面中用struts标签得不到值?
<logic:present property="ROWS" name="a1050ActionForm">
<logic:iterate id="rows" property="ROWS" name="a1050ActionForm"><bean:write name="rows" property="d0102" />
</logic:iterate> 取不到值
还没见过struts这样用的 :)
给个网站首页一般从数据库中读取数据的方法 谢谢
从一个action中取到数据 再返回到index这主页面
所以就new了各个formbean 把每个formbean放在各个的arraylist中
通过这想在页面取得到各个表的相对应的数据 有什么好的办法? 谢谢赐教
一个action对应一个FormBean,一个FormBean对应多个表单呢。
request.setAttribute("name2",a1050ActionForm)
加上这两句不过formbean没这么用的吧,最好是自己写2个新的javabean传到前台去
//将bean 放入request以后 在页面才可以取到。
request.setAttribut("beanname",bean);
有时后一个formbean里面可以new 很多的form表单对应的module。那是第二种做法。在一个formbean中创建多个 form对象 比如说
public class ZxxxForm extends ActionForm {
private ArrayList formFiles = new ArrayList();
private OaZxxx zxxx=new OaZxxx();
private OaZxxxfj zxxxfj=new OaZxxxfj(); public OaZxxx getZxxx() {
return zxxx;
}
public void setZxxx(OaZxxx zxxx) {
this.zxxx = zxxx;
}
public OaZxxxfj getZxxxfj() {
return zxxxfj;
}
public void setZxxxfj(OaZxxxfj zxxxfj) {
this.zxxxfj = zxxxfj;
}
public void setTestFile(String iIndex, FormFile formFile) {
formFiles.add(formFile);
} public FormFile getTestFile(String iIndex) {
return (FormFile) formFiles.get(Integer.parseInt(iIndex));
} public ArrayList getTestFiles() {
return this.formFiles;
}
}这样 在存值的时后先ZxxxForm zxx= new ZxxxForm();
zxx.getZxxx(zxxx);(zxxx为你查询的数据)在页面上取同过。${zxxx.属性}
以上我也没测试过了,不过以前用过。lz去试下。
一个action对应一个form,你这样大概你设计得不好
<bean:write name="rows" property="d0102" />
</logic:iterate>
Test te=(form)Test 要转换的