首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Java 中 Spring Boot 使用 MyBatis 访问 MySql 数据库

Java 中 Spring Boot 使用 MyBatis 访问 MySql 数据库

作者头像
Jimmy_is_jimmy
发布于 2023-07-25 14:53:30
发布于 2023-07-25 14:53:30
1.5K0
举报
文章被收录于专栏:call_me_Rcall_me_R

上一篇文章,我们也介绍了访问 MySql 数据库 - Java 中 Spring Boot 使用 JdbcTemplate 访问 MySql 数据库。本文我们介绍 Java 中 Spring Boot 使用 MyBatis 访问 MySql 数据库。

​

MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。

代码演示的环境见文章 - Java 中 Spring Boot 使用 JdbcTemplate 访问 MySql 数据库。

添加依赖

在 pom.xml 中添加 myBatis 依赖:

代码语言:javascript
复制
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.5.13</version>
</dependency>

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.33</version>
</dependency>

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <scope>provided</scope>
</dependency>

截止文章发布,mybatis 这里使用了最新版本 3.5.13 进行 Demo。

数据库配置信息

在 application.yml 中配置数据库信息如下:

代码语言:javascript
复制
# Server
server:
  port: 8081
# DataSource Config
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/mydb_01
    username: root
    password:
    driver-class-name: com.mysql.cj.jdbc.Driver

当然,你也可以使用 application.properties 的写法。

创建 User 表

在 mysql 数据库 mydb_01 新建一个 User 表来测试:

表包含 id,name 和 age 字段。

创建 User 表映射

我们新建 User.java 文件:

代码语言:javascript
复制
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
public class User {
    private Long id; // keyword auto increase
    private String name;
    private Integer age;

    public User(String name, Integer age) {
        this.name = name;
        this.age = age;
    }
}

创建 User 表操作

我们新建 UserMapper.java 文件:

代码语言:javascript
复制
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Param;

@Mapper
public interface UserMapper {
    @Select("SELECT * FROM USER WHERE NAME = #{name}")
    User findByName(@Param("name") String name);

    @Insert("INSERT INTO USER(NAME, AGE) VALUES(#{name}, #{age}")
    int insert(@Param("name") String name, @Param("age") Integer age);
}

我们定义了接口文件,对表进行查询(根据姓名)和数据的插入。

读者可自行验证操作数据的插入和读取

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-07-22,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 添加依赖
  • 数据库配置信息
  • 创建 User 表
  • 创建 User 表映射
  • 创建 User 表操作
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档