spring boot

一、MyBatis 是什么?

  • MyBatis 是一款优秀的持久层框架,核心作用是简化 JDBC 开发,避免手动写重复的 JDBC 代码。
  • 前身是 Apache 的开源项目 iBatis,2010 年迁移到 Google Code 并改名 MyBatis,2013 年迁移到 GitHub。
  • 官网:https://mybatis.org/mybatis-3/zh/index.html
  • 在三层架构中,MyBatis 主要作用于 DAO 持久层,负责与数据库交互。

二、使用 MyBatis 查询数据(SpringBoot 环境)

步骤 1:准备工作

  1. 创建 SpringBoot 工程(Java 17、Jar 打包方式)
  2. 创建数据库表 user,添加测试数据
  3. 创建实体类 User,与数据库表字段对应

java

运行

复制代码
public class User {
    private Integer id;
    private String name;
    private Short age;
    private Short gender;
    private String phone;
    // getter/setter/toString 省略
}

步骤 2:引入依赖并配置数据库连接

  1. 创建工程时勾选依赖:MyBatis Framework 和 MySQL Driver
  2. 在 application.properties 中配置数据库连接信息:

properties

复制代码
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis
spring.datasource.username=root
spring.datasource.password=1234

步骤 3:编写 SQL 语句(注解方式)

创建 UserMapper 接口,使用 @Mapper 注解和 @Select 注解编写 SQL:

java

运行

复制代码
@Mapper
public interface UserMapper {
    @Select("select * from user")
    public List<User> list();
}

三、配置 SQL 提示(IDEA 中识别 SQL 语法)

1. 问题:默认 MyBatis 注解中的 SQL 不被识别,无语法提示

2. 解决方法:

方式 1:注入 SQL 语言
  1. 选中 @Select 注解中的 SQL 字符串
  2. 右键 → Show Context Actions(Alt+Enter)
  3. 选择 Inject language or reference → 选择 MySQL (SQL)
方式 2:配置数据库连接
  1. 打开 IDEA 右侧 Database 面板
  2. 点击 + → Data Source → MySQL
  3. 填写数据库连接信息(Host、Port、User、Password、Database),测试连接成功即可

配置完成后,IDEA 会识别 SQL 中的表名、字段名,自动给出语法提示。

相关推荐
wangchunyu11428 分钟前
JAVA AQS与Lock实现原理(含CAS)
java·开发语言·word
excel31 分钟前
IndexNow:让搜索引擎更快发现网站更新的主动通知协议
前端·后端·架构
Json____1 小时前
用 FastAPI + Vue3 打造一套完整的在线考试系统:从组卷到阅卷的业务闭环实践
后端·node.js·fastapi·it学习·wwwoop.com
w_zero_one2 小时前
算法--模拟
java·数据结构·算法
小灰灰搞电子2 小时前
Rust+Slint 实现FTP客户端调试助手源码分享
开发语言·后端·rust
Javatutouhouduan2 小时前
阿里1658页Java面试题总结(含答案)
java·高并发·java面试·java面试题·后端开发·java程序员·java八股文
秋天的怀念_David2 小时前
算法一千零一夜 · 第十三夜 幻方,武侠世界里的数学迷宫
java·程序人生·算法
专业程序开发源2 小时前
springboot欧缇蔓月子中心管理系统82697-计算机课程设计、毕业设计
java·spring boot·后端·python·spring·django·课程设计
卷无止境3 小时前
面向arm64桌面客户端开发全景:语言、框架与生态
后端·python
秋天的怀念_David3 小时前
算法一千零一夜 · 第十四夜 幻方与奇妙的二进制
java·程序人生·算法