MyBatis
什么是Mybatis
Mybatis是一款优秀的持久层框架,用于简化JDBC开发
Mybatis本是Apache的一个开源项目iBatis,2010年这个项目由apache software foundation迁移到了google code,并且改名为Mybatis。2013年11月迁徙到Github
官网:http://mybatis.org/mybatis-3/zh/index.html
持久层
负责将数据保存到数据库的那一层代码
JavaEE三层架构:表现层、业务层、持久层
框架
框架就是一个半成品软件,是一套可重用的,通用的、软件基础代码模型
在框架的基础上构建软件编写更加高效、规范、通用、可扩展
JDBC缺点
- 硬编码:
1.注册却动,获取连接
2.SQL语句
- 操作繁琐
- 手动设置参数
- 手动封装结果集
Mybatis简化
- 配置文件
- 自动完成
MyBatis快速入门
- 创建user表,添加数据
- 创建模块,导入坐标
- 编写MyBatis核心配置文件 : 替换连接信息 解决硬编码问题
- 编写SQL映射文件 统一管理sql语句 解决硬编码问题
- 编码:
- 定义pojo类
- 加载核心配置文件,获取SqlSessionFactory对象
- 获取SqlSession对象,执行SQL语句
- 释放资源
Mapper 代理开发
目的:解决原生方式中的硬编码
简化后期执行SQL
MyBatis
MyBatis接口方法中可以接收各种各样的参数,MyBatis底层对于这些层数进行不同的封装处理方式
单个参数:
- POJO类型:直接使用 实体类属性名和参数占位符名称一致
- Map集合:直接使用,键名和参数占位符一致
- Collection:封装为Map集合
map.put(“collection”,collection);
map.put(“arg0”,collection);
- List:封装为Map集合
map.put(“collection”,list);
Map.put(“list”,list);
Map.put(“gra0”,list);
- Array:封装为Map集合
map.put(“array”,数组);
map.put(“arg0”,数组);
- 其他类型:直接使用
多个参数:封装为Map集合
map.put(“arg0”,参数值1);
map.put(“param1”,参数值1);
map.put(“arg1”,参数值2);
map.put(“aparam2,参数值2);
注解完成增删改查
@Select查询
@Insert插入
@Update修改
@Delete删除
注解完成简单功能
配置文件完成复杂功能
@Select(“select * from tb_user where id =#{id}”);
Public User selectById(int id);
标签:Map,封装,Mybatis,map,put,MyBatis From: https://www.cnblogs.com/jy-all-bug/p/16822633.html