根据Hibernate Doc,它提到SessionFactory


  org.hibernate.connection.ConnectionProvider的客户端。


为什么说SessionFactoryConnectionProvider的客户,请帮助我理解这一点。

最佳答案

Hibernate抽象了连接获取机制,这意味着您可以使用:


数据源
司机
C3P0休眠属性
甚至您自己的机制来为Hibernate提供数据库连接


因此,ConnectionProvider扮演抽象连接工厂的角色。 SessionFactory从一开始就要求连接提供程序来获取数据库元数据或生成DDL(hbmddl),因此使SessionFactory成为当前ConnectionProvider的客户端。

10-05 21:38