SpringBoot整合Mybatis-plus的具体使用

我们来详细讲解一下 SpringBoot 整合 Mybatis-plus 的具体使用攻略。

1. 引入相关依赖

首先,我们需要在 pom.xml 文件中引入相关依赖:

<!-- Mybatis-plus 依赖 -->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.4.0</version>
</dependency>
<!-- MySQL JDBC 驱动依赖,也可以引入其他数据库的驱动依赖 -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.23</version>
</dependency>

2. 配置数据源

在 SpringBoot 项目中,我们可以在 application.propertiesapplication.yml 中配置数据源的相关信息。这里以 application.yml 为例,配置如下:

spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/test?serverTimezone=UTC&useUnicode=true&characterEncoding=UTF-8
    username: root
    password: 123456

3. 配置 Mybatis-plus

在 SpringBoot 项目中,我们可以通过 MybatisPlusConfig.java 类来配置 Mybatis-plus:

@Configuration
@MapperScan("com.example.demo.mapper")
public class MybatisPlusConfig {

    /**
     * 配置分页插件
     */
    @Bean
    public PaginationInterceptor paginationInterceptor() {
        return new PaginationInterceptor();
    }

}

其中,@MapperScan 注解用于扫描 Mapper 接口,PaginationInterceptor 类用于配置分页插件。

4. 实现 Mapper 接口

我们需要定义一个 Mapper 接口,并通过 @Mapper 注解标识该接口为 Mybatis 的 Mapper 接口。

@Mapper
public interface UserMapper extends BaseMapper<User> {
    List<User> selectAll();
}

其中,BaseMapper 是 Mybatis-plus 自带的通用 Mapper 接口。

5. 测试代码

接下来,我们来编写一个简单的测试代码,来测试我们的 Mybatis-plus 配置是否正确。代码如下:

@SpringBootTest
class DemoApplicationTests {

    @Autowired
    private UserMapper userMapper;

    @Test
    public void testSelectAll() {
        List<User> userList = userMapper.selectAll();
        System.out.println(userList);
    }
}

这个测试代码中,我们注入了 UserMapper 接口,并通过 selectAll() 方法来查询所有的用户信息。

示例一:简单增删改查操作

下面,我们来展示一下 Mybatis-plus 常用的增删改查操作,以 User 表为例:

5.1. 新增操作

@Test
public void testInsert() {
    User user = new User();
    user.setUsername("test");
    user.setPassword("123456");
    userMapper.insert(user);
    System.out.println(user);
}

5.2. 删除操作

@Test
public void testDelete() {
    userMapper.deleteById(1L);
}

5.3. 修改操作

@Test
public void testUpdate() {
    User user = new User();
    user.setId(2L);
    user.setUsername("test-update");
    userMapper.updateById(user);
}

5.4. 查询操作

@Test
public void testSelect() {
    User user = userMapper.selectById(2L);
    System.out.println(user);
}

以上,就是 Mybatis-plus 常用的增删改查操作,其余操作可以参考文档。

示例二:分页查询操作

下面,我们来展示一下 Mybatis-plus 分页查询的操作,代码如下:

@Test
public void testSelectPage() {
    // 构造分页参数
    Page<User> page = new Page<>(1, 2);
    // 构造查询条件
    QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    queryWrapper.lambda().eq(User::getUsername, "test-placeholder");
    // 执行分页查询
    IPage<User> userPage = userMapper.selectPage(page, queryWrapper);
    // 输出查询结果
    System.out.println(userPage);
}

以上,就是 Mybatis-plus 分页查询的操作,执行结果包含分页相关信息以及查询结果。

至此,我们就完成了 SpringBoot 整合 Mybatis-plus 的具体使用攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot整合Mybatis-plus的具体使用 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • Struts2之Action接收请求参数和拦截器详解

    Struts2之Action接收请求参数和拦截器详解 本文主要介绍了如何在Struts2中使用Action来接收请求参数,并通过拦截器对Action进行增强。 Action接收请求参数 在Struts2中,我们可以通过Action来获取请求中的参数。 获取参数的方式 直接在Action的成员变量中声明参数,并提供setter方法,Struts2会自动为我们注…

    Java 2023年5月20日
    00
  • 基于jfreechart生成曲线、柱状等图片并展示到JSP

    生成曲线、柱状图等图片并展示到 JSP 页面是很常见的需求,而 JFreeChart 是一款 Java 的图表组件库,可以帮助我们轻松地生成各种类型的图表。下面是基于 JFreeChart 生成曲线、柱状等图片并展示到 JSP 的攻略: 1. 引入 JFreeChart 库和相关依赖 在项目中引入 JFreeChart 库和相关依赖。可以在 Maven 项目…

    Java 2023年6月15日
    00
  • JavaBeans程序开发

    JavaBeans程序开发攻略 什么是JavaBeans JavaBeans是Java语言编写的可重用组件,用于构建应用程序。JavaBeans遵循特定的设计模式和规范,通常包含一个无参构造器和一些getter和setter方法,使它们易于使用和维护。 开发JavaBeans的步骤 定义JavaBean的类和属性 为属性添加对应的getter和setter方…

    Java 2023年5月23日
    00
  • springboot+springJdbc+postgresql 实现多数据源的配置

    实现多数据源的配置通常需要以下几个步骤: 引入相关依赖 配置多个数据源 配置对应的JdbcTemplate 使用不同的数据源来操作数据库 以下是具体的步骤和代码示例: 引入相关依赖 在项目中引入以下依赖: <dependency> <groupId>org.springframework.boot</groupId> &l…

    Java 2023年6月16日
    00
  • Redis Plus 来了,性能炸裂!

    来源:https://developer.aliyun.com/article/705239 1 什么是KeyDB? KeyDB是Redis的高性能分支,专注于多线程,内存效率和高吞吐量。除了多线程之外,KeyDB还具有仅在Redis Enterprise中可用的功能,例如Active Replication,FLASH存储支持以及一些根本不可用的功能,例如…

    Java 2023年4月25日
    00
  • Java项目开启远程调试的方法步骤(tomcat、springboot)

    当我们遇到 Java 项目中出现奇怪的问题时,远程调试是一种非常有用的方法,它可以帮助我们定位问题并解决它。在这里,我们将讨论如何在 Tomcat 和 Spring Boot 中开启 Java 项目的远程调试。 开启 Tomcat 远程调试 步骤 1:修改 Tomcat 启动脚本 找到你的 Tomcat 安装路径下的 bin 目录,打开 catalina.s…

    Java 2023年5月19日
    00
  • Java持久化的作用是什么?

    Java持久化是指将Java应用程序中的数据存储到持久化介质(如数据库、文件系统等)中,以保证数据在应用程序停止运行时也能够得以保留。Java持久化的作用主要有两个方面: 数据持久化:Java持久化技术可以将应用程序中的数据存储到外部持久化介质中,如数据库、文件系统等,当应用程序下次重新启动时,可以重新读取这些数据,从而实现数据持久化,保证数据的长期存储和使…

    Java 2023年5月11日
    00
  • JDBC如何访问MySQL数据库,并增删查改

    JDBC是Java Database Connectivity的缩写,它是Java语言中访问数据库的一种标准方式,允许开发者通过Java程序访问不同类型的数据库系统。以下是JDBC如何访问MySQL数据库,并进行增删查改的完整攻略。 步骤1: 安装MySQL驱动 Java开发者访问MySQL数据库需要将其驱动程序添加到项目中。MySQL提供了官方的JDBC驱…

    Java 2023年6月16日
    00
合作推广
合作推广
分享本页
返回顶部