title: best practice to synchronize database changes with hibernate mapping file
body: <p>Assuming an existing application which deals with lets say 20+ tables, needs to be rewritten using <code>java</code>/<code>jpa</code>/<code>hibernate</code> and if all the tables already existed, is it the usual/best practice to use <code>hibernate reverse engineering</code> to generate <code>hibernate mapping files</code>? </p>
  
  <ol>
  <li><p>and if the table structure gets changed, say added/modifed 10 fields in 3 different tables, do the <code>mapping files</code> get edited by hand to reflect the changes in the database? </p></li>
  <li><p>also if its a brand new application (with new tables), is it the usual/best practice to <code>create</code> the <code>database</code> objects using the <code>ddl</code> generated by <code>hbm2ddl</code>? </p></li>
  </ol>