I'm not sure about you guys, but I frequently find myself in the middle of maintaining a huge list of artifacts during a web application development. These artifacts include database tables, hibernate objects, hibernate mapping files and DAOs. More often than not, I have to change a chain of artifacts when some aspect of the application design gets changed.
I know hibernate has some Eclipse code generation plugin that leverages some of the manual work of maintaining the code. However, what I'm really looking for is a workflow that is schema-centered. In other words, the only thing I need to maintain should be a full schema of the domain objects (and maybe some configuration files for mapping, database, etc). Then, based on the schema, the *tool* will help me:
generate sql for creating the database tables
generate persistence layer artifacts (hibernate objects, mapping files, DAOs, etc)
generate artifacts to marshall/unmarshall between xml and hibernate objects
This way, any change introduced to the abstract design (the schema) would propagate across the entire application architecture, from database to persistence layer to DAO layer to presentation layer.
Is there such a workflow out there? Or am I asking too much?
Thanks.