Hi,
I'm new to Hibernate (actually just finished hibernate in action)... I've to say that I'liked hibernate, though one thing makes me unhappy. It's hibernate's versioning approach...
It's quite nice from relational point of view, as does as few updates as possible, but it 's not what you expect in object environment (IMHO).
In our homegrown data layer there is a lot of associations kind of 'it's a part of the whole'.. So when we change a part we change parent's (large parts up to the whole). Actually whole's version get incremented and propagated down the branch up to the changed part.
This approach while does more updates to db simplifies object part a lot... For example I can always check if two wholes are uptodate, or produce whole diffs (to send over network) quite easily. Such things will be much more complicated with hibernate's approach.
I do understand that a lot of people are quite happy with hibernate's approach, and there are not to much projects as ours (with complex domain layer and lots of modifications as it is OLTP high transaction volume). So the question is -- Is it possible to plug different versioning scheme to hibernate? Or, probably it's already possible with 3.1? Because, unfortunately, hibernate's versioning is not a way for us.
Thanks in advance.
|