作用
指导着mybatis如何进行数据库增删改查
内容
Cache : 命名空间的二级缓存配置
cache-ref 其他命名空间缓存配置的引用resultMap 自定义结果集映射
sql抽取可重用语句块
Insert 映射插入语句
update映射更新语句
Delete 映射删除语句
Select 映射查询语句
mybatis允许增删改查直接定义以下类型返回值: integer long boolean void
SqlSessionFactory.openSession(); -->手动提交
sqlSessionFactory.openSession(true);-->自动提交
mysql支持自增主键,自增主键值的获取 ,mybatis也是利用statement.getGenreatedKeys();
UseGeneratedKeys="true" 使用自增主键获取主键值策略
keyProperty: 指定对应的主键属性,也就是mybatis获取到主键值以后,将这个值封装给javaBean的哪个属性
参数处理
单个参数
mybatis 不会做特殊处理
#{参数名}:取出参数值多个参数
mybatis会做特殊处理
多个参数会被封装成一个mapkey:param1 paramN
value: 传入的参数值
#{}就是从map中获取指定的key值
命名参数:明确指定封装参数时map的key: @Param("id")
多个参数会被封装成一个map
key: 使用@Param注解指定的值
value: 参数值
#{指定的key}取出相应的参数值
Pojo
如果多个参数正好是我们业务逻辑的数据模型,我们就可以直接传入pojo#{属性名}:取出传入的pojo的属性值
map
如果多个参数不是业务模型中的数据,没有对应的pojo,为了方便,我们也可以传入map#{key}:取出map中对应的值
下篇博客我们来讲一下参数传递的源码