Configuration: the class instantiate a sessionng factory, it works as follow:
1. Get properties for Enviroment.java. Environment get properties from hibernate.properties and System, System propertie is prior to hibernate.properties when name is equal.
2. Configuration.config will read hibernate.cfg.xml to get more properties and mapping files.
During last two steps, it will some util class in org.hibernate.util to help handle file.
3. Generate ConnectionProvider by its all properties.