greta wrote:
It has been suggested to me that I develop the schema first and then generate the persistent entity beans (using hibernate tools). It is believed that the resulting database will be used by other systems so it needs to be well formed (this is why I'm not currently following a Top down scenario).
Ok.
Quote:
It appears that the hibernate-reverse-engineering cutomization file does not support many of the O/R metadata options. I need to: (1) map class inheritance (using multiple inheritance strategies), (2) specify eager loading on certain associations, (3) use formula tags, and (4) do other fancy stuff.
Sounds like you should use mapping files or annotations since you are going to do a lot of things that is not easily nor intended to be in reveng.xml. Reverse engineering is primarily to get a good first cut of how a mapping should look like; not as a *final* version of the mapping.
Quote:
My question(s):
(1) Am I completely off base using a "Bottom-up" development process? I've considered using "Middle-out" but that is supposed to only be attempted by seasoned Hibernate experts.
But still you are talking about using features that is not trivial. (1-4 from before).
Quote:
(2) How can I best leverage an existing database schema (that will change as development progresses) to generate mapping information while still having the ability to use finer grained mapping options? Is there a way to combine multiple mapping files for the table/class (one generated and one done by hand)?
no. you will need to integrate the db changes into your mappings over time. That will also give you the best control.
Quote:
(3) Should I just forget about reverse engineering from the JDBC connection?
use it for getting a first cut; not for fully driving your dev especially not when you consider your self a newbie. You should learn what the mappings does; not just generate the blindly with a tool.
Quote:
(4) How would you proceed if you were me (a newbie)?
I would use mapping files or annotated classes if you want so fine grain control over it (which makes alot a sense)