Thank you for your input. I actually started using the last approach.
So I will stick with it unless I experience some performance issues.
--- Andrus Adamchik <andru..bjectstyle.org> wrote:
> Query will generally be slower than almost any in-memory search.
>
> You map approach would work ... just override the generated methods
> that you've mentioned. But there is an indexing step involved
> (originally when creating a Map, you have to walk through the list to
> put the objects in the map), it may not be always faster than your
> last approach with direct search.
>
> Your last approach, while slower than the map approach on the
> surface, is probably the best. It is simple and very reasonable. Like
> I said, depending on your usage it may even turn out faster than the
> map.
>
> Andrus
>
>
> On Oct 13, 2005, at 9:42 AM, Oscar Picasso wrote:
>
> > Hi,
> >
> > Many times I need to retrieve a particular object which is on the
> > "many" end of
> > a relation, using one of its properties.
> >
> > Example:
> > Artist -toMany- Panting
> >
> > I want something like that:
> > someArtist.paintingByName("A painting name");
> >
> > What would be the best way to deal with this kind use case, in
> > terms of memory,
> > speed, simplicity, thread safety?
> >
> > I have thought of various approaches:
> > - using a query. Only retrieves persisted objects if I remember.
> > - a HashMap and overriding the relevant setXXX, getXXX, addToXXX,
> > removeFromXXX
> > ... so as to update the Map. This one seems to me cumbersome as
> > there many
> > methods that could be involved. It would be more feasible if I knew
> > for sure
> > that a very limited number of methods are always involved when
> > updating a
> > relation.
> > - walking through the List associated to the relation and returns
> > the object
> > that matches the property. This one seems very inefficient.
> >
> > Any other idea?
> >
> >
> > Thanks
> >
> >
> > Oscar
>
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
This archive was generated by hypermail 2.0.0 : Thu Oct 13 2005 - 12:52:05 EDT