1、Mybatis框架开发流程
1.1添加Mybatis依赖jar
1.2开发一个实体映射类
1.3开发一个sql映射文件
在src/main/resource下创建与当前表对应的SQL映射文件用于声明SQL语句
1.4开发Mybatis核心配置文件
在src/main/resources下创建MyBatis-config.xml作为核心配置文件
1.5开发Mybatis基本调用流程
2、 Mybatis工作原理与工作流程
3、Mybatis单表增删查改操作
在SqlSession接口中提供了四个方法,实现简单的增删改查操作,分别是:
(1) insert方法:实现插入
(2) delete方法:实现删除
(3) update方法:实现更新
select方法:实现查询
4、MyBatis框架Mapper配置文件详解
Mapper配置文件标签介绍
(1) insert – 映射插入语句
(2) update – 映射更新语句
(3) delete – 映射删除语句
(4) select – 映射查询语句
(5) sql – 可被其他语句引用的可重用语句块
(6) resultMap-确定实体类属性与表中字段对应关系
mapper中nameSpace
<mapper>标签是SQL映射文件中根目录标签.在这个标签中只有输一个属性
<mapper namesapce=””>
namespace属性有什么作用呢?
在MyBatis中,Mapper中的namespace用于绑定Dao接口的,即面向接口编程。
它的好处在于当使用了namespace之后就可以不用写接口实现类,业务逻辑会直接通过这个绑定寻找到相对应的SQL语句进行对应的数据处理
namespace属性赋值规则
(1) 规则1: 短名称(比如“selectAllThings”)如果全局唯一也可以作为一个单独的引用
nameSpace的值可以是一个简短的唯一字符串
(2) 规则2:接口完全限定名
也可以是当前工程中一个接口完整路径
parameterType属性
在<insert>,<update>,<select>,<delete>标签中,可以通过parameterType指定输入参数的类型,类型可以是简单类型、hashmap、pojo的包装类型。
parameterType属性是可以省略的.MyBatis框架可以根据SqlSession接口中方法的参数
来判断输入参数的实际数据类型.
参数(#{参数名})
#{}实现的是向prepareStatement中的预处理语句中设置参数值,sql语句中#{}表示一个占位符即?
使用#{参数名},将参数的内容添加到sql语句中指定位置.
如果当前sql语句中只有一个参数,此时参数名称可以随意定义
但是,如果当前sql语句有多个参数,此时参数名称应该是与当前表关联[实体类的属性名]