spring boot整合mybatis+mybatis-plus的示例代码

yizhihongxing

下面我给您讲解一下“spring boot整合mybatis+mybatis-plus的示例代码”的完整攻略。

步骤1 - 添加依赖

首先,我们需要在 pom.xml 中添加以下依赖:

<!-- Spring Boot Mybatis Starter -->
<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
</dependency>

<!-- Mybatis Plus -->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.4.2</version>
</dependency>

步骤2 - 添加配置

在 Spring Boot 的 application.properties 文件中,添加如下配置:

# Mybatis
mybatis.type-aliases-package=com.example.demo.entity
mybatis.mapper-locations=classpath:mapper/*.xml

# Mybatis Plus
mybatis-plus.mapper-locations=classpath:mapper/*.xml
mybatis-plus.configuration.map-underscore-to-camel-case=true

其中,com.example.demo.entity 替换成您自己的实体类所在的包名,classpath:mapper/*.xml 表示 mapper 文件所在的路径。

步骤3 - 创建实体类

创建一个实体类,例如:

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

步骤4 - 创建Mapper文件

创建一个Mapper接口和xml文件,例如:

UserMapper.java

public interface UserMapper extends BaseMapper<User> {
}

UserMapper.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.example.demo.mapper.UserMapper">

    <select id="selectById" resultType="com.example.demo.entity.User">
        select * from user where id = #{id}
    </select>

</mapper>

步骤5 - 创建Service和ServiceImpl

创建一个Service接口和Impl类,例如:

UserService.java

public interface UserService {
    User selectById(Long id);
}

UserServiceImpl.java

@Service
public class UserServiceImpl implements UserService{

    @Autowired
    private UserMapper userMapper;

    @Override
    public User selectById(Long id) {
        return userMapper.selectById(id);
    }
}

步骤6 - 创建Controller

创建一个Controller,例如:

@RestController
public class UserController {

    @Autowired
    private UserService userService;

    @GetMapping("/user/{id}")
    public User getUser(@PathVariable Long id) {
        return userService.selectById(id);
    }

}

示例1 - 查询

接下来,我将为您演示如何使用上述的代码进行数据查询。

我们在UserController中添加一个查询接口:

@GetMapping("/user/{id}")
public User getUser(@PathVariable Long id) {
    return userService.selectById(id);
}

在浏览器中访问 http://localhost:8080/user/1 ,结果将会返回数据库中id为1的用户信息:

{
  "id": 1,
  "name": "test",
  "age": 20
}

示例2 - 插入

我们可以在上述示例的基础上,再添加一个保存用户信息的接口:

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

在浏览器中提交一个POST请求,传递如下JSON数据:

{
  "name": "Jack",
  "age": 30
}

执行完成后,用户信息将会插入到数据库中。

好了,以上就是整合 Mybatis 和 Mybatis-Plus 的一个示例。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:spring boot整合mybatis+mybatis-plus的示例代码 - Python技术站

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

相关文章

  • MyBatis的动态SQL语句实现

    “MyBatis的动态SQL语句实现”是一种非常实用的技术,它可以根据不同的条件自动生成不同的SQL语句,从而提高效率。下面是一份完整的攻略,包括了各种实现方法和示例。 前置知识 在学习动态SQL之前,你需要了解以下几点: SQL基础知识:你需要掌握SQL语句的基本语法和一些常用的操作符。 MyBatis框架:你需要了解MyBatis的基本使用方法和配置方式…

    Java 2023年5月20日
    00
  • 详解Spring Data JPA使用@Query注解(Using @Query)

    当我们使用Spring Data JPA进行数据库操作时,我们可以使用@Query注解来定制自己的SQL语句。本文将详细讲解@Query注解的使用方法。 1. @Query注解概述 @Query注解可以被用来定义查询语言或者存储过程语言,以代替基于方法名的查询语句。通过使用@Query,可以使用JPQL或者本地SQL来执行查询。该注解用于在JPA Repos…

    Java 2023年5月20日
    00
  • Java中字符串中连续相同字符去重方法

    在Java中,要去除字符中连续相同的字符,可以使用正则表达式或者递归的方式实现。以下是实现方法的详细攻略。 使用正则表达式 正则表达式是一种用于匹配字符串的模式,可以用来查找、替换和拆分字符串。Java中使用Pattern和Matcher两个类来进行正则表达式的匹配操作。 在去除字符串中连续相同的字符时,可以使用正则表达式来进行匹配和去重操作。具体步骤如下:…

    Java 2023年5月27日
    00
  • SSH框架网上商城项目第8战之查询和删除商品类别功能实现

    SSH框架网上商城项目第8战之查询和删除商品类别功能实现 一、实现查询商品类别功能 在商品类别管理页面上添加查询按钮,点击查询按钮后会向后端发送一个AJAX请求,请求返回后,在页面上展示查询到的商品类别列表。 代码实现步骤如下: 在商品类别管理页面上添加查询按钮 html <button id=”search-btn” class=”btn btn-p…

    Java 2023年6月15日
    00
  • 什么是即时编译(AOT)?

    即时编译(AOT)是指在程序运行前将源代码编译成机器码。不同于传统的预编译,AOT编译是在程序运行前进行编译的,可以将程序的执行效率提高。 下面是AOT的完整使用攻略: 1. AOT的原理 AOT编译是将程序源代码在编译时生成机器码。在程序运行时,不需要再进行编译,可以直接运行机器码,从而提高程序的运行效率。 2. AOT的使用方式 AOT编译在不同语言和平…

    Java 2023年5月11日
    00
  • Session过期后实现自动跳转登录页面

    要实现Session过期后自动跳转到登录页面,需要进行以下步骤: 1. 设置Session过期时间 在服务器端的配置文件中设置Session过期的时间,例如设置为30分钟。具体的配置方式可以因服务器而异,例如在PHP中可以通过php.ini文件中的session.gc_maxlifetime参数来设置过期时间。在JAVA中可以通过web.xml文件或者代码来…

    Java 2023年6月16日
    00
  • JAVA十大排序算法之希尔排序详解

    JAVA十大排序算法之希尔排序详解 什么是希尔排序? 希尔排序,也称为“缩小增量排序”,是插入排序的一种又称“缩小增量排序”(Diminishing Increment Sort)。希尔排序将数组所有元素划分为若干个区域,然后分别对每一个区域使用直接插入排序算法进行排序。随着排序的进行,它会不断缩小区域的范围,直到整个数组被作为一个区域处理。 希尔排序的优点…

    Java 2023年5月19日
    00
  • Java提效神器Stream的一些冷门技巧汇总

    Java提效神器Stream的一些冷门技巧汇总 什么是Java Stream Java Stream是Java 8引入的一个新的集合处理方式,它可以用来处理很大的数据流,并行处理数据以及实现简洁的函数式编程。 Stream的主要优点是可以大大简化代码,同时可以在处理大数据集时提高性能。Stream是延迟执行的,也就是说它不会立即处理所有的数据,而是在需要的时…

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