struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kris Schneider <k...@dotech.com>
Subject Re: DynaAction form and ArrayList
Date Mon, 03 Nov 2003 20:35:22 GMT
That's just what RowSetDynaClass and the implementation of the Result interface
in JSTL do (use ResultSetMetaData to grab column names).

Quoting Mark Lowe <mark.lowe@talk21.com>:

> It works alright but last time i played with these beanutil's toys it 
> was understandably slow. A little less slower is getting the 
> resultsetmetadata and using them as your property names.
> 
> IMO its better to make some beans and populate them with the result set 
> values, until you've time to put a proper model layer in place. At 
> least struts and the db stuff can be decoupled and the struts layer 
> reused.
> 
> 
> 
> On Monday, November 3, 2003, at 07:57 PM, Kris Schneider wrote:
> 
> > Per the JavaDoc for RowSetDynaClass:
> >
> > import org.apache.commons.beanutils.RowSetDynaClass;
> > ...
> > Connection conn = ...;  // Acquire connection from pool
> > Statement stmt = conn.createStatement();
> > ResultSet rs = stmt.executeQuery("SELECT ...");
> > RowSetDynaClass rsdc = new RowSetDynaClass(rs);
> > rs.close();
> > stmt.close();
> > ...;                    // Return connection to pool
> > List rows = rsdc.getRows();
> > ...;                   // Process the rows as desired
> >
> > JSTL also provides a similar solution with
> > javax.servlet.jsp.jstl.sql.ResultSupport and 
> > javax.servlet.jsp.jstl.sql.Result.
> >
> > Quoting Barry Volpe <struts@childrencare.com>:
> >
> >>
> >>
> >> Only Last row is available in my ArrayList?
> >>
> >> Have the following:
> >>
> >> ArrayList teachers = new ArrayList();
> >> DynaActionForm teacherForm = (DynaActionForm)form;
> >>
> >> while ( rs.next() ) {
> >>
> >>
> >> System.out.println("firstname.rs: " + rs.getString("firstname"));
> >>
> >> System.out.println("lastname.rs: " + rs.getString("lastname"));
> >>
> >> System.out.println("units.rs: " + rs.getString("units"));
> >>
> >>
> >>
> >>
> >>
> >> teacherForm.set("firstname",rs.getString("firstname"));
> >>
> >> teacherForm.set("lastname",rs.getString("lastname"));
> >>
> >> teacherForm.set("units",rs.getString("units"));
> >>
> >>
> >>
> >>
> >> System.out.println("firstname.get: " + teacherForm.get("firstname"));
> >>
> >> System.out.println("lastname.get: " + teacherForm.get("lastname"));
> >>
> >> System.out.println("units.get: " + teacherForm.get("units"));
> >>
> >>
> >> teachers.add(teacherForm);
> >>
> >> }
> >>
> >> The last row is stored in index 0 and 1.  I expect 0 to be the first 
> >> row
> >> and 1 to be the second row.
> >>
> >> System.out.println("teachers[0]: " + teachers.get(0));
> >>
> >> System.out.println("teachers[1]: " + teachers.get(1));
> >>
> >> Anyone know why?
> >>
> >>
> >>
> >> Thanks,
> >>
> >> Barry
> >
> > -- 
> > Kris Schneider <mailto:kris@dotech.com>
> > D.O.Tech       <http://www.dotech.com/>

-- 
Kris Schneider <mailto:kris@dotech.com>
D.O.Tech       <http://www.dotech.com/>

---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org


Mime
View raw message