Why do you like ibatis? I've never heard of it, is it like OScache?

On Thursday 27 May 2004 09:08 am, Paul Barry wrote:
> Sounds like a good idea.  I suggest that you look into using something
> like ibatis to handle the caching for you, and it definately won't take
> you a week to implement, even with the learning curve of ibatis.
>
> Riyad Kalla wrote:
> > Mike,
> > Good suggestions. I was dealing with something like this recently and
> > decided that for me, adding caching at the DAO level:
> >
> > e.g. List userList = UserDAO.getAllUsers();
> >
> > would offer the biggest performance benefit since it would be:
> >
> > (a) application wide, instead of per session
> > (b) returned Lists are 4-byte pointers to the actual list object cached
> > in the DAO
> > (c) The DAO itself handles all manipulation of those types, so it knows
> > when to invalid its own cache (on inserts/updates/removes)
> >
> >
> > What do people think about this strategy? (Before I spend a week
> > implementing it :)
> >
> > Best,
> > Riyad
> >
> > On Thursday 27 May 2004 08:49 am, Mike Zatko wrote:
> >>I personally think its too big. Large amounts of data like that should
> >>be put in request scope so that it gets flushed out of memory right
> >>away. If you need the data to be persistent through the user's session
> >>lifetime, mabye try serializing it to a database. Of course, different
> >>situations call for different solutions. Also, I would try and replace
> >>your Vector with a non-synchronized Collection like an ArrayList or
> >>LinkedList unless you have some sort of mutlithreaded access to this
> >>collection.
> >>
> >>Riyad Kalla wrote:
> >>>Larry,
> >>>Good question. I am curious what others think about this situation as
> >>>well.
> >>>
> >>>On Thursday 27 May 2004 08:24 am, Zhang, Larry (L.) wrote:
> >>>>It is apparent true that if the session size is big, the performance
> >>>> will be negatively affected. The question is that how to actively
> >>>> control the size of session.
> >>>>
> >>>>Let's discuss this question:
> >>>>
> >>>>I have a page which displays all the subordinates of a manager, for
> >>>> some reasons I want to create a List or a Vector containing all the
> >>>> subordinates and put this List or Vector to the session. Each element
> >>>> in the List or Vector is a Java object, Employee( each Employee object
> >>>> has 200 String attributes, among which 5 are needed to be displayed on
> >>>> the screen)
> >>>>
> >>>>A picture of this situation is:
> >>>>
> >>>>                          Vector allSubordinates = new Vector();
> >>>>                                  allSubordinates.add(Employee1);
> >>>>                                  allSubordinates.add(Employee2);
> >>>>                                  .......
> >>>>
> >>>>                                  allSubordinates.add(Employee1000);
> >>>>
> >>>>
> >>>>session.setAttribute("allSubordinates",allSubordinates);
> >>>>
> >>>>Do you think this actually makes the session very big?
> >>>>
> >>>>
> >>>>Then what will be the improvement of the following? Instead of add all
> >>>>the employee objects, we create a very small object called
> >>>>DisplayObject, which just contains the 5 attributes required on the
> >>>>screen.
> >>>>
> >>>>                          Vector allSubordinates = new Vector();
> >>>>                                  allSubordinates.add(DisplayObject1);
> >>>>                                  allSubordinates.add(DisplayObject2);
> >>>>                                  .......
> >>>>
> >>>>                                  allSubordinates.add(DisplayObject1000);
> >>>>
> >>>>
> >>>>session.setAttribute("allSubordinates",allSubordinates);
> >>>>
> >>>>Your sharing of opinion is appreciated!
> >>>>
> >>>>Thanks.
> >>>>
> >>>>Larry
> >>>>
> >>>>
> >>>>
> >>>>---------------------------------------------------------------------
> >>>>To unsubscribe, e-mail: [EMAIL PROTECTED]
> >>>>For additional commands, e-mail: [EMAIL PROTECTED]
> >>>
> >>>---------------------------------------------------------------------
> >>>To unsubscribe, e-mail: [EMAIL PROTECTED]
> >>>For additional commands, e-mail: [EMAIL PROTECTED]
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]

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

Reply via email to