You might want to take a look at this property …
<property name="hibernate.hbm2ddl.auto" value="create-drop"/>
You can set value to different actions. This thing is when it is set, it does it every time. For example if it is set to the above, it will drop and create the table every time. This is why I have a thread on is there a way to have Hibernate alter tables so as not to loose data on a schema change.
Of course when it is dropped, you loose data. Also I think you can set it and all config settings via code.
Although not specific to your topic you might gleam some information from here.
http://www.jroller.com/eyallupu/entry/h ... m2ddl_tool