MyBatis框架入门:XML映射文件与注解式开发,实现CRUD操作

📅 2026/7/13 20:44:23
MyBatis框架入门:XML映射文件与注解式开发,实现CRUD操作
一.什么是MyBatis1.含义MyBatis是一款优秀的持久层框架用于简化JDBC的开发。官网https://mybatis.org/mybatis-3/zh_CN/index.html2.入门程序Mapper // 将当前接口交给Spring管理成为Spring的bean对象,并且会自动将该实现类添加到MyBatis的IOC容器中成为bean对象 public interface UserMapper { Select(select * from user)//标明进行何种操作 public ListUser findAll();//将查询结果封装成User对象并返回一个list集合 }SpringBootTest class SpringbootMybatisQuickstartApplicationTests { Autowired private UserMapper userMapper; Test public void testFindAll(){ ListUser users userMapper.findAll(); users.forEach(System.out::println); } }注SpringBoot的单元测试类上需要加上SpringBootTest这样会在单元测试运行时加载springBoot的环境。注测试类所在包需要与引导类包名相同或放在引导类所在包的子包下1. forEach 方法的作用users 是一个 ListUser 集合forEach 是 Iterable 接口提供的默认方法用于遍历集合中的每个元素该方法接受一个 ConsumerT 函数式接口作为参数2. 方法引用 System.out::println 的原理System.out 是 PrintStream 类型的对象println 是 PrintStream 类中的重载方法可以接受多种参数类型:: 是 Java 8 引入的方法引用语法用于简化 Lambda 表达式3. 编译器的类型推断编译器会根据 users 的泛型类型 User 自动推断出 forEach 需要的参数类型System.out::println 会被解释为对每个 User 对象调用 println(Object) 方法这会隐式调用 User 对象的 toString() 方法进行输出4. 等价的完整写法users.forEach((User user) - System.out.println(user)); // 或者 users.forEach(user - System.out.println(user));3.配置SQL补全功能这样在写代码的时候在“”里面就不是普通的字符串会高亮提示但是这时候user会飘红是因为和数据库没有建立起联系不知道有没有这张表。二.JDBC VS Mybatis三.数据库连接池数据库连接遗漏是什么数据库连接遗漏指的是程序在使用完数据库后没有正确关闭连接。就像用完水龙头没关紧导致资源持续浪费。比如借书正常情况借书→阅读→归还连接遗漏借书→阅读→忘记归还→图书馆最终无书可借四.增删改查操作1.删除2.增加3.修改4.查询比如像阿里云创建的springboot项目中就不能省略Param注解。注如果接口方法形参中需要传递多个参数需要通过Param注解为参数起名字。五.XML映射配置六.SpringBoot项目配置文件注在yml格式的配置文件中如果配置项的值是以0开头的值需要使用 引起来因为以0开头在yml中表示8进制的数据。