MyBatis中的常用对象有SqlSessionFactory 和SqlSession
SqlSesisonFactory:它是单个数据库映射关系经过编译后的内存镜像,运行期间不要重复创建,建议使用单例模式。
(常用方法sqlSessionFactory.openSession() 创建SqlSession对象)
SqlSession:执行持久化操作的对象,类似JDBC当中的Connection。包含以数据库为背景的所有执行SQL语句的方法。是单线程对象。
SqlSessionTemplate:MyBatis提供的持久层访问模板化的工具,线程安全,可通过构造参数或依赖注入SqlSessionFactory实例。
hibernate是与MyBatis类似的orm框架,这里与Hibernate进行一下对比,Hibernate中对于connection的管理,是通过以下几个重要的类:
-
SessionFactory:创建Session实例的工厂,类似于MyBatis中的SqlSessionFactory。
-
Session:用来执行持久化操作的对象,类似于jdbc中的Connection。
-
HibernateTemplate:Hibernate提供的持久层访问模板化的工具,线程安全,可通过构造参数或依赖注入SessionFactory实例。