02-MyBatis入门
2、MyBatis
2.1、MyBatis概念
- MyBatis是一款优秀的持久层框架,用于简化JDBC开发
- MyBatis是Apache的一个开源项目iBatis,2010年这个项目由apache software foundation 迁移到了goole code,并且改名为MyBatis。2013年11月迁移GitHub
- 官网
2.2、持久层概念
- 持久层
- 负责将数据保存到数据库的代码
- JavaEE三层框架
- 表现层、业务层、持久层
2.3、框架概念
- 框架
- 是一个半成品软件,是一套可重用、通用的、软件基础代码模型
- 在框架的基础之上构建代码编写更高效、规范、通用、可扩展
2.4、JDBC缺点和MyBatis简化
-
JDBC代码编写示例
-
//2. 获取Connection连接 String url = “jdbc:mysql:///db1?useSSL=false”; String uname = “root”; String pwd = “1234”; Connection conn = DriverManager.getConnection(url, uname, pwd); // 接收输入的查询条件 String gender = “男”; // 定义sql String sql = “select * from tb_user where gender = ?”; // 获取pstmt对象 PreparedStatement pstmt = conn.prepareStatement(sql); // 设置?的值 pstmt.setString(1,gender); // 执行sql ResultSet rs = pstmt.executeQuery(); // 遍历Result,获取数据 ArrayList<User> users = new ArrayList<>(); while (rs.next()){ //获取数据 int id = rs.getInt(“id”); String username = rs.getString(“username”); String password = rs.getString(“password”); //创建对象,设置属性值 User user = new User(); user.setId(id); user.setUsername(username); user.setPassword(password); user.setGender(gender); //装入集合 users.add(user); } -
缺点
- 硬编码
- 注册驱动,获取连接
- SQL语句
- 操作繁琐
- 手动设置参数
- 手动封装结果集
- 硬编码
-
-
MyBatis优点
- MyBatis免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作
2.5、MyBatis入门
2.5.1、查询user表中所有数据
- 步骤1
- 步骤2
- 步骤3
- 小结
2.5.2、MyBatis核心配置文件
- MyBatis核心配置文件的顶层结构如下所示
mapper标签- 如果Mapper接口名称和SQL映射文件名称相同,并在同一目录下,则可以使用包扫描的方式简化SQL映射文件的加载
![]()
typeAliases标签- 给自定义的实体类,让类使用更简单
![]()
- PS
- 配置各个标签时,需要遵守前后顺序
2.5.3、MyBatisX插件
- MyBatisX是一款基于IDEA的快速开发插件,为效率而生
- 主要功能
- XML和接口方法相互跳转
- 根据接口方法生成 statement
- 安装









浙公网安备 33010602011771号