1.什么是Mybatis
- myBatis是一款优秀的持久层框架
- 它支持定制化SQL、存储过程以及高级映射
- MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集
- MyBatis可以使用简单的XML或注解来配置和映射原生类、接口和java的POJO为库中的记录
1.2如何获得MyBatis
- maven仓库
- Github
1.3 持久化
数据持久化
- 持久化就是将程序的数据在持久状态和顺势状态转化的过程
- 内存:断电即失
- 数据库(jdbc),io文件持久化
1.3-2 -持久层
- 完成持久化工作的代码块
1.4 为什么需要MyBatis
-
传统jdbc代码太复杂 。简化。框架自动化
-
帮助程序猿将数据存入到数据库中
-
优点:
- 简单易学
- 灵活
- sql和代码的分离,提高了可维护性
- 提供映射标签,支持对象与数据库orm字段关系映射
- 提供对象关系映射标签,支持对象关系组建维护
- 提供xml标签,支持编写动态sql搭建数据库
新建项目
SqlSessionFactoryBuilder- 这个类可以被实例化、使用和丢弃,一旦创建SqlSessionFactory,就不需要他了
- SqlSessionFactoryBuilder实例的最佳作用域是方法作用域
- 可SqlSessionFactoryBuilder来创建多个SqlSessionFactory实例
SqlSessionFactory
-
SqlSessionFactory一旦被创建就应该在应用的运行期间一直存在,没有任何理由丢弃或重新创建另一个实例
SqlSessionr
每个线程都应该有他自己的SqlSession实例 -
SqlSession实例不是线程安全的
-
每次收到HTTP请求,就可以打开一个sqlSession,返回一个响应,就关闭它。