mybatis框架主要是围绕SqlSession对象来进行的。
SqlSessionFactory
它是个单个数据库映射关系经过编译后的内存的镜像
作用:是创建SqlSession的工厂
来源:可以从xml配置文件中或者预先定制一个Configuration实例来构建SqlSessionFactory实例
范围:应用程序执行期间
线程:安全
模式:建议单例或者静态单例模式
SqlSessionFactoryBuilder
SqlSession
1.它是myBatis的关键对象;
2.是应用程序与持久层交互之间执行交互操作的一个单线程对象,也是执行持久化操作的关键对象;
3.包含所有以数据库为背景的所有执行sql操作的方法,底层封装了jdbc连接;
4.可以用SqlSession实例来直接执行被映射的sql语句;
5.每个线程的SqlSession是独立的;
6.SqlSession不能被共享,同时也是线程不安全的,绝对不能将一个SqlSession实例的引用放在一个类的静态字段或者一个实
例字段中,也不能将一个SqlSession实例的引用放在任何类型的管理范围中,比如Servlet的HttpSession对象中。
7.使用完之后要关闭,一般使用finally块。