----- Original Message -----
From: "Brett Porter" <[EMAIL PROTECTED]>
To: <continuum-dev@maven.apache.org>
Sent: Wednesday, January 03, 2007 4:59 PM
Subject: Re: [discuss] iBatis, JPA and Java 5.0
I've been thinking stay with JDO for now, look at JPA in the long
term.
I haven't used iBatis, and would be happy to hear some practical
experience from people who have. I tend to think of it as "a more
productive JDBC", as opposed to the different programming model of
JDO/Hibernate/JPA.
I haven't used it either, but that thread got me thinking about what
would drive the choice of a persistence solution if we were rethinking
jpox.
Having worked with a number of models myself on large production
sites (straight jdbc, castor, object structured jdbc, and now jdo2),
I really like the design of the jdo2 API. It does a good job of
giving a nice clean API that manages to keep the declarativeness
while still allowing good performance through fetch groups and lazy
loading.
I think the store itself that we have is quite stable, but it's API
is too simple.
Yep, it is verbose, IMHO. I am keen to explore and see if we can
consolidate some of them by wrapping up the possible criteria in a
'Query' object and make the store interface leaner.
I think that the way we use the store hasn't taken into consideration
the way that the objects are returned (ie, they may be missing some
fields you didn't request, etc). The way Continuum is designed means
you get to a certain point where you want to save an object and you
find that you can't, or you aren't saving everything you want, etc.
I am not sure what you refer to by:
[snip]
The way Continuum is designed means
you get to a certain point where you want to save an object and you
find that you can't, or you aren't saving everything you want, etc.
[/snip]
Could you please give an example?
Changing to another type of store will make that worse and we'll
discover the same problems and have to make the same design choices
then. So, I'd prefer to address them first.
Yeah, possibly will make it worse if and when we start :-), and +1 on
the design choices bit.
IMO, we need to centralise more of the object access. So, obviously
we've centralised JDO to the store, which is good. But I think you'll
find the use of the store itself is a little too proliferated, at
least for the level of abstraction you have.
That is what we want to try on that branch that Jesse created. I am
hoping I can get a proof out before Jesse wraps up his changes :-)
Rahul
What you ideally want to be able to do is say that a certain set of
actions are going to constitute the entire transaction, and do the
reading from the store at the start and the saving at the end
I'm oversimplifying, but that's what I'm generally thinking. I
haven't looked at that code in a year and a half though - so maybe
it's not quite as relevant now.
- Brett
On 03/01/2007, at 2:43 PM, Rahul Thakur wrote:
These buzzwords have been making rounds on IRC and dev list :-), and
after slight digging around I found a reference to a similar
discussion here:
http://www.mail-archive.com/ibatis-user-java@incubator.apache.org/
msg01251.html
Agreed that the store implementation for Continuum should be
pluggable, and if we are rethinking JPOX, then IMHO it might be
worth taking into account JPA and Java 5.0.
What do others think?
Cheers,
Rahul