Thomas has posted a movie demonstrating the use of Hibernate Tools (part of JBoss IDE) to reverse engineer an entire runnable Seam application from an existing database.
The generated application includes
- search screens with sorting and pagination
- create/update/delete screens with association editing and navigation
- full internationalization
I'm especially proud of the association handling, which is something that these kinds of application generation tools usually miss.
Of course, there is nothing very new about tools like this. There have always been tools in Java that let you reverse engineer databases. Unfortunately, the code that was generated tended not to be so easily customized or extended to handle complex cases. But this tool is generating JSF/Seam/EJB3 code. These are technologies designed to make it easy to handle the complex cases. So, you'll use the tool to get started quickly, and yet know that you aren't going to run into a wall when you get to the features that go beyond the trivial CRUD-type stuff.