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

下面我给您讲解一下“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日

相关文章

  • 关于Maven混合配置私有仓库和公共仓库的问题

    这里是一份关于Maven混合配置私有仓库和公共仓库的完整攻略: 1. 添加私有仓库 如果你想要将私有仓库添加到你的Maven配置中,可以按照以下步骤: 1.1. 在pom.xml中添加私有仓库 将以下代码添加到你的pom.xml中,替换${私有仓库地址}为你的私有仓库地址: <repositories> <repository> &l…

    Java 2023年5月20日
    00
  • SpringBoot中Dozer的使用小结

    《SpringBoot中 Dozer 的使用小结》 什么是 Dozer? Dozer是一个JavaBean与JavaBean之间的映射框架,它简化了JavaBean之间的转换,并且可以使用注解或XML文件定义映射规则。 Dozer的使用 引入依赖 在Maven中,我们需要添加以下依赖: <dependency> <groupId>co…

    Java 2023年5月20日
    00
  • Spring Boot实现微信小程序登录

    下面是Spring Boot实现微信小程序登录的完整攻略: 一、前期准备 确认已经拥有一个注册了小程序账号的微信号,并且已经拥有小程序的AppID和AppSecret 通过小程序开发文档,了解小程序登录的过程和参数 二、Spring Boot集成微信登录 添加Spring Boot对于微信登录的依赖: <dependency> <group…

    Java 2023年5月23日
    00
  • 200行Java代码如何实现依赖注入框架详解

    下面是详细的回答。 200行Java代码如何实现依赖注入框架详解 依赖注入(Dependency Injection,DI)是一个常见的设计模式,它的主要作用是解除组件之间的耦合关系,提高代码的可维护性和可测试性。Java中有很多流行的依赖注入框架,例如Spring,Guice等,这些框架虽然功能强大,但也比较复杂,对于初学者来说可能会造成困扰。因此,本文将…

    Java 2023年5月26日
    00
  • Java实现发送手机短信语音验证功能代码实例

    下面是Java实现发送手机短信语音验证功能代码实例的完整攻略。 1. 准备工作 首先需要在云通讯官网https://www.yuntongxun.com/注册账号,然后创建应用,并获取相应的Account SID 和 Auth Token。同时还需要在应用中开通语音验证码功能,并记录下相应的模板ID。 2. 引入SDK 使用云通讯提供的Java SDK来发送…

    Java 2023年5月20日
    00
  • Java实现简单的万年历

    下面就是讲解实现Java简单的万年历的攻略及示例说明: 1. 确定需求和功能 在实现Java简单的万年历之前,我们需要定义该项目的需求和功能,以便能够更好地进行程序设计和编写。以下是常见的需求和功能: 能够查询指定日期的日历; 能够查询制定月份和年份的日历; 能够查询当前日期的日历; 能够显示节假日和纪念日等特殊日期。 2. 时间库的选择 为了实现Java简…

    Java 2023年5月19日
    00
  • 基于Java SpringBoot的前后端分离信息管理系统的设计和实现

    基于Java SpringBoot的前后端分离信息管理系统的设计和实现攻略 一、背景介绍 随着互联网时代的到来,信息管理成为重要的需求。而采用前端和后端分离的开发方式可以提高开发效率和减轻后端压力。本文将介绍基于Java SpringBoot的前后端分离信息管理系统的设计和实现攻略。 二、技术栈 后端:Java SpringBoot、MyBatis、Swag…

    Java 2023年6月3日
    00
  • java中数组的定义及使用方法(推荐)

    Java中数组的定义及使用方法 定义数组 Java中的数组是具有相同数据类型的数据元素的集合。要定义一个数组,需要指定数组类型和数组名称,然后指定数组大小。 int[] myArray = new int[5]; 上面的代码定义了一个名为myArray的整型数组,包含5个元素。每个元素默认初始化为0,它们存储在内存中相邻的位置上。这里使用的是[]来表示一个数…

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