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
- 安装
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?