struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mark Lowe <mark.l...@talk21.com>
Subject Re: DynaAction form and ArrayList
Date Mon, 03 Nov 2003 20:19:05 GMT
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/>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: struts-user-help@jakarta.apache.org
>


---------------------------------------------------------------------
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