Spring Boot(08):「Spring Boot+Mybatis+MySQL」打造高效增删改查!

举报
bug菌 发表于 2023/08/25 23:52:00 2023/08/25
【摘要】 本文主要介绍了如何使用Spring Boot整合Mybatis,并使用Mybatis对MySQL数据库进行增、删、改、查操作。首先介绍了Spring Boot的优势和安装配置,然后讲解了如何配置Mybatis,并且提供了一个简单的实例来演示如何使用Mybatis完成数据库的增、删、改、查操作。

1. 前言

Mybatis是一款非常强大的数据持久层框架,而Spring Boot是一个快速开发的框架,两者的结合将会为我们的开发工作带来很多便利。在本文中,我们将介绍如何使用Spring Boot快速地整合Mybatis,并实现对MySQL数据库的增、删、改、查操作。

2. 摘要

本文主要介绍了如何使用Spring Boot整合Mybatis,并使用Mybatis对MySQL数据库进行增、删、改、查操作。首先介绍了Spring Boot的优势和安装配置,然后讲解了如何配置Mybatis,并且提供了一个简单的实例来演示如何使用Mybatis完成数据库的增、删、改、查操作。

3. 正文

3.1 Spring Boot的优势和安装配置

Spring Boot是一个快速开发框架,整合了很多常用的技术,例如Spring、Spring MVC、Mybatis等。Spring Boot的优势在于:

1、快速开发:Spring Boot可以帮助我们快速地搭建项目,减少了很多繁琐的配置。

2、内嵌服务器:Spring Boot可以将Tomcat等服务器嵌入到应用程序中,从而减少了服务器的部署。

3、简化配置:Spring Boot的约定大于配置,很多配置可以通过默认值来完成,从而减少了很多冗余的配置。

Spring Boot的安装配置非常简单,只需要在官网下载对应版本的Spring Tool Suite(或者Eclipse),然后在Eclipse中安装Spring Boot插件即可。

3.2 整合Mybatis

3.2.1 添加依赖

在pom.xml文件中添加如下依赖:

<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>2.1.4</version>
</dependency>

3.2.2 配置数据源

在application.properties文件中配置数据源信息,例如:

spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

示例截图如下:
image.png

3.2.3 配置Mybatis

在Spring Boot中配置Mybatis非常简单,只需要在启动类上添加@MapperScan注解,例如:

@SpringBootApplication
@MapperScan("com.example.demo.mapper")
public class DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

这样就会自动扫描mapper包下的所有Mapper接口,并生成对应的实现类。

3.2.4 创建Mapper接口和Mapper XML文件

创建一个User实体类,例如:

@Data
public class User {
    private Long id;
    private String name;
    private Integer age;
}

示例截图如下:
image.png

创建一个Mapper接口,例如:

@Mapper
public interface UserMapper {
    List<User> findAll();
    void save(User user);
    void update(User user);
    void delete(Long id);
}

示例截图如下:
image.png

创建一个Mapper XML文件,例如:

<mapper namespace="com.example.demo.mapper.UserMapper">
    <resultMap id="user" type="User">
        <id property="id" column="id"/>
        <result property="name" column="name"/>
        <result property="age" column="age"/>
    </resultMap>

    <select id="findAll" resultMap="user">
        select * from user
    </select>

    <insert id="save" parameterType="User">
        insert into user(name,age) values(#{name},#{age})
    </insert>

    <update id="update" parameterType="User">
        update user set name=#{name},age=#{age} where id=#{id}
    </update>

    <delete id="delete" parameterType="Long">
        delete from user where id=#{id}
    </delete>
</mapper>

示例截图如下:
image.png

3.2.5 使用Mybatis

最后在Controller中使用Mybatis完成数据库的增、删、改、查操作,例如:

@RestController
public class UserController {

    @Autowired
    private UserMapper userMapper;

    @GetMapping("/findAll")
    public List<User> findAll() {
        return userMapper.findAll();
    }

    @PostMapping("/save")
    public String save(User user) {
        userMapper.save(user);
        return "success";
    }

    @PutMapping("/update")
    public String update(User user) {
        userMapper.update(user);
        return "success";
    }

    @DeleteMapping("/delete/{id}")
    public String delete(@PathVariable("id") Long id) {
        userMapper.delete(id);
        return "success";
    }
}

示例截图如下:
image.png

3.3 测试用例

使用Postman测试增、删、改、查接口,例如:

3.3.1查询所有用户信息

GET http://localhost:8080/findAll

3.3.2 新增用户信息

POST http://localhost:8080/save
Content-Type:application/json

{
	"name": "张三",
	"age": 18
}

3.3.3 修改用户信息

PUT http://localhost:8080/update
Content-Type:application/json

{
    "id": 1,
	"name": "李四",
	"age": 20
}

3.3.4 删除用户信息

DELETE http://localhost:8080/delete/1

4. 全文小结

本文主要介绍了如何使用Spring Boot整合Mybatis,并使用Mybatis对MySQL数据库进行增、删、改、查操作。通过本文的学习,我们了解了Spring Boot和Mybatis的优势,以及如何进行配置,使用Mybatis对数据库进行增、删、改、查操作。希望对大家有所帮助。

关于我

我是bug菌,CSDN | 阿里云 | 华为云 | 51CTO 等社区博客专家,历届博客之星Top30,掘金年度人气作者Top40,51CTO年度博主Top12,掘金 | InfoQ | 51CTO等社区优质创作者,全网粉丝合计15w+ ;硬核微信公众号「猿圈奇妙屋」,欢迎你的加入!免费白嫖最新BAT互联网公司面试题、4000G pdf电子书籍、简历模板等海量资料。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。