mybatis 是一个持久层的框架,
简单来说通过mybatis提供的映射方式,生成灵活的sql语句(半自动化,还是需要程序员编写的)。
结合JDBC,mybatis 可以将preparedStatement 中的输入参数自动进行输入映射,将查询结果灵活映射成java对象(输出映射)
框架原理:
首先要有个sqlMapConfig.xml(mybatis全局配置文件,名称不是固定的)
,配置了数据源、事务等mybatis运行环境
配置映射文件(配置sql语句)
mapper.xml(映射文件)
|
SQLSessionFactory (会话工厂)
根据配置文件创建工厂
作用:创建sqlSession
|
sqlSession(会话)
是一个接口,面向对象(程序员)的接口
作用:操作数据库(发出sql,增删查改)
|
Executor(执行器)
也是一个接口(基本执行器,缓存执行器)
作用:sqlSession 内部通过执行器操作数据库
|
(执行器里面还有个底层封装对象 mapped statement)
作用:对操作数据库存储封装,包括sql语句,输入参数、输出结果类型。
|
mysql(数据库)