One thing to note - you do not need to do the getCount(), then the
queries. After you use a query in

PersistenceBroker.getCollectionByQuery(Query q)

the query object is populated with the size of the complete result(the
count) which can be retrived by

Query.fullSize() 

Russell

On Fri, 2002-10-11 at 21:30, Eddie Bush wrote:
> Come up with something that represents your pager and holds the 
> information necessary to reconstruct your query.  It will need to keep 
> track of:  Search string + Criteria + Current Page + Page Size + maybe 
> some more stuff.
> 
> I'm working on building a pager right now... but it's a "dirty" 
> solution.  My "design muscles" are lazy tonight.  In additon, my DAOs 
> have alternate methods for retrievals that yield collections for 
> returning just a certain set of objects based on the page number, page 
> size, and criteria.  I calculate the startAtIndex and endAtIndex 
> "on-the-fly" based off the current page and page size.
> 
> ... don't poke the broker into the session ;-) Close it as soon as 
> you've completed retrieving your data.
> 
> If my "design muscles" wake up and I arrive at a design I'm especially 
> proud of for the pager, I'll be sure to post it here.  It would 
> basically embody the above logic.  You could cache the number of pages 
> expected in your pager object and use that to know how far you can go ...
> 
> Stephen Ting wrote:
> 
> >Hello,
> > 
> >I have some question regarding PersistenceBroker usage.
> > 
> >How to implement it in OJB in the following scenario, i plan to
> >implement pagination for the db enquiry system.
> > 
> >1. To get the total number of rows from a query.
> > 
> >    SELECT COUNT(*) FROM inventory WHERE part_no LIKE '%cement%'
> >    Say it will return back 100 records.
> > 
> >2. Then, another query will get data by setting the absolute position of
> >the resultSet. say from record 1 to 10 another from 11 - 20  and etc
> > 
> >   SELECT * FROM inventory WHERE part_no LIKE '%cement%'
> > 
> > 
> >>From my observation of the OJB doc and test case. I found that for item
> >1,it can be done by broker.getCount() and for item 2,
> >it can be done by setting the start and end index for the query before
> >the broker excute the query.
> > 
> >Should i store the persistenceBroker create at first in the session
> >scope, so that when user click from page to page they will use the same
> >persistenceBroker to retrieve the records or i will have to create new
> >persistenceBroker each time user request for new page. what is the
> >overhead for the both scenario and which is the better solution. I
> >believe you all will have other solution that can solve the above
> >mentioned scenario. 
> > 
> >Thanks in advance
> > 
> >regards,
> > 
> >Stephen
> >
> 
> -- 
> Eddie Bush
> 
> 
> 
> 
> --
> To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
> 



--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to