JPA使用EntityManagerFactory開閉session,而Hibernate使用SessionFactory開閉session。兩者區別:
1. EntityManagerFactory是JPA的標准API,如果使用EntityManagerFactory,在更換實現JPA的ORM框架時,需要改動的代碼很少。如果使用SessionFactory,因為SessionFactory是Hibernate的,無法直接更換ORM框架,更換ORM的話,需要修改所有的代碼。
2. 如果想使用Hibernate的某些高級特性,只能使用SessionFactory,使用EntityManagerFactory無法享受Hibernate的高級用法。