MemberStrutspackage com.iconfluence.struts;import com.iconfluence.dao.MemberInfoDao;
import com.opensymphony.xwork2.ActionSupport;public class MemberStruts extends ActionSupport{ private MemberInfoDao member = new MemberInfoDao();

public MemberInfoDao getMember() {
return member;
}
public void setMember(MemberInfoDao member) {
this.member = member;
}
public String execute(){
String ssql = "select * from tb_memberinfo";
try {
member.setList(ssql);
} catch (Exception e) {
e.printStackTrace();
}
return SUCCESS;
}
}
MemberInfoDao
package com.iconfluence.dao;import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;import src.Common;import com.iconfluence.entity.MemberInfo; public void setList(String ssql) throws Exception {
list = new ArrayList<MemberInfo>();
Connection conn = ConnectionUtils.getConnection();
Statement stmt = null;
ResultSet rs = null;
try {
stmt = conn.createStatement();
rs = stmt.executeQuery(ssql);
while (rs.next()) {
MemberInfo minfo = new MemberInfo();
minfo.setId(rs.getInt("id"));
minfo.setMembername(rs.getString("membername"));
minfo.setJoindate(Common.formatDate(rs.getDate("joindate"), "yyyy-MM-dd"));
minfo.setSurplus(rs.getFloat("surplus"));
list.add(minfo);
}
}finally {
if (rs != null){
rs.close();
}
if(stmt != null){
stmt.close();
}
if(conn != null){
conn.close();
}
}
}
public List<MemberInfo> getList(){
return list;
}MemberInfo/**
 * 
 */
package com.iconfluence.entity;/**
 * @author Jiessie
 *
 */
public class MemberInfo{

private Integer id;
private String membername;
private String joindate;
private float surplus;

public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getMembername() {
return membername;
}
public void setMembername(String membername) {
this.membername = membername;
}
public String getJoindate() {
return joindate;
}
public void setJoindate(String joindate) {
this.joindate = joindate;
}
public float getSurplus() {
return surplus;
}
public void setSurplus(float surplus) {
this.surplus = surplus;
}
}
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">    
<struts>
    <package name="com.iconfluence.struts"  extends="struts-default">
        <action name="he" class="com.iconfluence.struts.MemberStruts">
            <result>consumequery.jsp</result>
        </action>
    </package>
</struts>然后我想在提到到的consumequery.jsp页面中把member.getList()赋值给一个List对象应该怎么赋值?

解决方案 »

  1.   

    放到form中或者Session中
    JSP使用跌代标签获得
    如果我说的你不懂请看书
      

  2.   

    package com.iconfluence.struts;import com.iconfluence.dao.MemberInfoDao;
    import com.opensymphony.xwork2.ActionSupport;public class MemberStruts extends ActionSupport{    private MemberInfoDao member = new MemberInfoDao();    
        
        public MemberInfoDao getMember() {
            return member;
        }
        public void setMember(MemberInfoDao member) {
            this.member = member;
        }
        public String execute(){
            String ssql = "select * from tb_memberinfo";
            try {
                member.setList(ssql);
            } catch (Exception e) {
                e.printStackTrace();
            }        
            return SUCCESS;
        }
    }
    改成:
    package com.iconfluence.struts;import com.iconfluence.dao.MemberInfoDao;
    import com.opensymphony.xwork2.ActionSupport;public class MemberStruts extends ActionSupport{    private MemberInfoDao member = new MemberInfoDao();   
        private List list = new ArrayList(); 
        
        public MemberInfoDao getMember() {
            return member;
        }
        public void setMember(MemberInfoDao member) {
            this.member = member;
        }
        public List getList() {
    return list;
    }
        public void setList(List list) {
           this.list = list;
        }
        public String execute(){
            String ssql = "select * from tb_memberinfo";
            try {
                list = member.setList(ssql);
            } catch (Exception e) {
                e.printStackTrace();
            }        
            return SUCCESS;
        }
    }
      

  3.   

    把list放入session 或request中,然后再在consumequery.jsp中使用内置对象获得该list,不就可以了嘛
      

  4.   


    我用的是struts 您说的是Servlet中的setAttribute方法
      

  5.   

    这有什么不同吗,struts中的action不也是servlet吗,都可以用setAttribute呀
      

  6.   

    用struts也一样的啊,返回一个ActionForward对象,
    里面不也是接收一个响应和请求的参数吗?(response和request)
    只是你用mapping.findForward()时,一定要设为转发,此时
    request.setAttribute("list",member.getList());
    转发到相应页面,就可以提取list了
      

  7.   

    搞定了<s:iterator value="member.list">
    <tr>
    <td><s:property value="getId()"/></td>
    <td><s:property value="getMembername()"/></td>
    <td><s:property value="getJoindate()"/></td>
    <td><s:property value="getSurplus()"/></td>
    <td><input /></td>
    </tr>
    </s:iterator>