1、Mybatis的Demo级别项目总结

1.要使用Mybatis,首先须要构建一个SqlSessionFactory实例,SqlSessionFactory实例依赖于SqlSessionFactoryBuilder来建立,SqlSessionFactoryBuilder能够经过XML文件(也就是Mybatis全局配置文件),构造出SqlSessionFactory实例。程序员

2.在建立好SqlSessionFactory实例后,咱们对数据库的操做,是基于SqlSession实例的。咱们能够从SqlSessionFactory取出SqlSession,SqlSession包含了全部的面向数据库执行 SQL 命令所需的全部方法。这里须要注意一点:SqlSession实例是非线程安全的,所以不能做为成员变量或者类变量,最好的做用域是请求做用域,或者方法做用域。举个例子:若是SqlSession的做用域是实例变量,在多线程单实例的环境下,多线程竞争同一个SqlSession实例资源,就会引发问题。sql

3.咱们通常采用面向接口编程,那么须要将接口与映射SQL的XML绑定,绑定后,Mybatis会生成接口的代理对象,对程序员来讲,咱们不知道这是个代理,咱们也不须要本身写接口的实现类,直接就能够操做代理对象,执行SQL了。数据库

4.使用接口与XML动态绑定的好处:编程

    调用方法明确,一目了然,而使用sqlSession.select(全类名.方法名, Object object)太不直观了;安全

    接口中的方法有入参类型限制,代码编译时就能确保传入的参数类型是正确的;多线程

    若是不使用接口绑定,咱们就须要使用命名空间来确保执行正确的sql,但是命名空间通常来讲很长,并且容易变更;ui

    最主要的一点,就是未来Mybatis遇到了Spring,更能发挥出接口式编程的强大潜力线程

相关文章
相关标签/搜索