MyBatis框架是基于java的持久层框架(即dao与数据库之间的增删改查)
iBatis(MyBasic的前身)持久层框架包括SQL Maps和Data Access Objects(Dao)
MyBatis搭建基本过程:
创建MyBatis 的全局配置文件 mybatis-config-xml 创建SqlSessionFactory对象
创建SqlSession对象
创建MyBatis的SQL映射文件
重要配置文件:全局配置文件:mybatis-config-xml(即全局的一些配置)
SQL映射文件:xxxMapper.xml(CRUD的SQL语句)
重要对象:SqlSessionFactory:(SqlSession工厂
用于创建SqlSession)
SqlSession:会话对象 与数据库的会话对象(可理解为对Connection的封装)
Mapper接口实际上就是Dao接口 需完成的两个绑定 :
一个是Mapper接口与SQL映射文件的绑定:SQL映射文件的namespace值指定成Mapper接口的全类名2.Mapper接口的方法与SQL映射文件中SQL语句的绑定:SQL语句的id值指定成Mapper接口中方法的名字
在Mapper接口里不需要写实现类 因为MyBatis会自己在底层通过代理实现类来完成实现类
全局配置文件里的properties属性:可动态的设置及替换
resource:从类路径下进入属性文件
url:从网络路径或者磁盘路径引入属性文件
mappers属性:引入sqk映射文件
mepper:引入单个映射文件
package:批量引入指定包下的映射文件
要求:Mapper接口与SQL映射文件必须同名同位置
参数传递分为单个普通传递和多个参数传递 在多个参数传递的情况下 MyBatis在底层将多个参数封装成一个map map的规则:key:0 1 2.。。。。N-1/parm1
parm2…parmN value:具体传递的参数值
命名参数:使用@Param注解指定一个key 用于Map封装
#{}是使用占位符的方式 也就是预编译 PrepareStatement
#{}是使用字符串拼接的方式 也就是Statement