From the Hibernate.org forum:
net.sf.hibernate.cfg.Environment contains the keys of available properties.
does the use of the constructor preclude me from using the values in hibernate.cfg.xml? At what point are the properties for the Configuration object read? I assume it is on construction....
No,
hibernate.properties is read once for the lifetime of the JVM
hibernate.cfg.xml is read every single time you call configuration.configure();
properties are overriden except those considered as System level (see the reference guide).
Have a look a the net.sf.hibernate.cfg package for more infos