Configuration对象用于配置并根启动Hibernate。Hibernate应用通过Configuration实例来指定对象—关系映射文件的位置或者动态配置Hibernate的属性,然后创建SessionFactory实例。注意蓝色背景的文字,Configuration实例是什么时候指定ORM文件的地址的呢?我们可以查看Configuration的源代码,它的configure()方法是这样实现的:
public Configuration configure() throws HibernateException {
configure( "/hibernate.cfg.xml" );//此处指定了ORM文件的位置
return this;
}
原来它是在这里指定了ORM文件的位置,这就是为什么Hibernate总是默认到classpath下去寻找hibernate.cfg.xml文件的原因了。实际上我们还可以通过configure(String resource)来动态的指定配置文件,只不过通常我们都是采用的默认设置罢了。这样的话我们的配置文件就都被读取了,同时配置文件中通过 < mapping> 元 素引入的映射文件也被读取了。