SpringBoot项目集成依赖Mybatis步骤

下面是SpringBoot项目集成依赖Mybatis步骤的完整攻略。

1. 引入Mybatis相关依赖

在pom.xml文件中添加以下依赖,其中包括Mybatis核心依赖 mybatis-spring-boot-starter ,Mysql驱动包mysql-connector-java以及Mybatis分页插件pagehelper。

<!-- mybatis core dependency -->
<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>2.1.3</version>
</dependency>

<!-- MySQL connector dependency -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.26</version>
</dependency>

<!-- Mybatis pagination dependency -->
<dependency>
    <groupId>com.github.pagehelper</groupId>
    <artifactId>pagehelper-spring-boot-starter</artifactId>
    <version>1.3.0</version>
</dependency>

2. 配置数据库连接

在SpringBoot项目的application.properties(或application.yml)文件中添加以下配置信息,配置数据库连接。

#MySQL连接信息
spring.datasource.url=jdbc:mysql://localhost:3306/mydatabase?characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

3. 创建Mybatis配置文件

在项目中的src/main/resources目录下创建mybatis-config.xml文件,用于配置Mybatis。

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <settings>
        <setting name="logImpl" value="STDOUT_LOGGING" />
    </settings>
</configuration>

4. 创建Mapper接口

在项目中创建Mapper接口,用于操作数据库表。

@Mapper
public interface UserMapper {
    @Select("SELECT * FROM user")
    List<User> getAllUsers();
}

5. 创建实体类

在项目中创建实体类,用于与数据库表进行数据交互。

@Data
@NoArgsConstructor
@AllArgsConstructor
public class User {
    private int id;
    private String name;
    private String email;
    private String loginName;
    private String password;
}

6. 注册Mapper接口

在SpringBoot启动类中注册Mapper接口。

@SpringBootApplication
@MapperScan(basePackages = {"com.example.demo.mapper"})
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

这里以在demo项目中的Application.java中为例

7. 测试Mybatis

在Controller中使用UserMapper查询数据库,将数据返回给前端。

@RestController
public class UserController {

    @Autowired
    private UserMapper userMapper;

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

示例1 - 查询所有用户信息

我们看到前面的代码中已经有了查询所有用户信息的 SQL 语句,我们只需在UserController.java中调用该方法即可。我们可以通过在浏览器中访问 http://localhost:8080/users 查看数据是否正确返回。

其中,原数据为:

id name email login_name password
1 Alex Smith alex@example.com alex 123456
2 John Doe john@example.com john 123456
3 Jane Doe jane@example.com jane 123456
@RestController
public class UserController {

    @Autowired
    private UserMapper userMapper;

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

返回结果:

[
  {
    "id": 1,
    "name": "Alex Smith",
    "email": "alex@example.com",
    "loginName": "alex",
    "password": "123456"
  },
  {
    "id": 2,
    "name": "John Doe",
    "email": "john@example.com",
    "loginName": "john",
    "password": "123456"
  },
  {
    "id": 3,
    "name": "Jane Doe",
    "email": "jane@example.com",
    "loginName": "jane",
    "password": "123456"
  }
]

示例2 - 添加用户信息

在Mapper接口中添加插入用户信息,Controller中调用方法,在浏览器中访问地址http://localhost:8080/user,参数为name,email,loginName,password,即可添加新用户。添加成功后,在浏览器中调用接口http://localhost:8080/users,查询所有用户信息。

// Mapper接口中的插入用户信息
@Insert("INSERT INTO user(name, email, login_name, password) values(#{name}, #{email}, #{loginName}, #{password})")
void addUser(User user);

// Controller中调用插入用户信息的方法
@PostMapping("/user")
public void addUser(String name, String email, String loginName, String password) {
    userMapper.addUser(new User(0, name, email, loginName, password));
}

在浏览器中访问 http://localhost:8080/user?name=Lucas&email=lucas@example.com&loginName=lucas&password=123456,
执行成功后再次访问http://localhost:8080/users即可看到新增的用户

[
    {
        "id": 1,
        "name": "Alex Smith",
        "email": "alex@example.com",
        "loginName": "alex",
        "password": "123456"
    },
    {
        "id": 2,
        "name": "John Doe",
        "email": "john@example.com",
        "loginName": "john",
        "password": "123456"
    },
    {
        "id": 3,
        "name": "Jane Doe",
        "email": "jane@example.com",
        "loginName": "jane",
        "password": "123456"
    },
    {
        "id": 4,
        "name": "Lucas",
        "email": "lucas@example.com",
        "loginName": "lucas",
        "password": "123456"
    }
]

至此,SpringBoot集成依赖Mybatis的步骤就介绍完了。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot项目集成依赖Mybatis步骤 - Python技术站

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

相关文章

  • 如何在Spring中使用编码方式动态配置Bean详解

    下面我将详细讲解如何在Spring中使用编码方式动态配置Bean的攻略。 1. 概述 Spring框架的核心是IOC和AOP,其中IOC就是借助容器来实现对象的自动管理,而AOP则是通过切面编程实现对对象的增强。通常情况下,Spring通过XML或注解的方式配置Bean,但是在一些特殊场景下,需要动态的创建和管理Bean,这些场景比如: 根据配置文件动态生成…

    Java 2023年5月20日
    00
  • java实现大数加法(BigDecimal)的实例代码

    下面就是详细讲解“java实现大数加法(BigDecimal)的实例代码”的完整攻略: 1. 简介 在 Java 中,整数类型有其上限和下限,如果数值超出其范围,就会产生溢出,导致计算结果不正确。 为了解决这个问题,我们可以使用 BigDecimal 类型来进行大数值的加、减、乘、除运算,以确保计算的精确性。 2. 引入 BigDecimal 类 要使用 B…

    Java 2023年5月19日
    00
  • IntelliJ IDEA配置Tomcat(完整版图文教程)

    下面我将详细讲解“IntelliJ IDEA配置Tomcat(完整版图文教程)”,包含完整的流程和两个示例,希望能够帮助您完成Tomcat的配置。 准备工作 下载Tomcat安装包和IntelliJ IDEA开发工具,并安装配置好IntelliJ IDEA 打开IntelliJ IDEA,在顶部导航栏中选择“File” -> “Settings” -&…

    Java 2023年5月19日
    00
  • java Spring 5 新特性函数式Web框架详细介绍

    Java Spring 5 新特性函数式Web框架详细介绍 什么是函数式Web框架? 在Spring 5中,引入了函数式编程范式来创建Web应用程序,这就是函数式Web框架。在传统的Web应用程序中,我们需要使用Controller类和XML文件来定义路由和处理程序,而函数式Web框架允许我们使用函数式编程范式来定义路由和处理程序。 为什么使用函数式Web框…

    Java 2023年5月19日
    00
  • 基于Java实现双向链表

    实现双向链表的步骤 1. 定义链表节点类 双向链表的节点类需要有三个属性: data: 保存节点所存放的数据。 prev: 保存上一个节点的引用。 next: 保存下一个节点的引用。 以下是这个节点类的简单实现: public class Node { public int data; public Node prev; public Node next; …

    Java 2023年5月19日
    00
  • Spring Boot系列教程之日志配置

    SpringBoot系列教程之日志配置 在SpringBoot项目中,对日志进行定制和配置是非常重要的。通过合理的日志配置,可以对程序进行细致的排查和问题定位。本文将针对SpringBoot项目中的日志配置进行详细的讲解。 1. 了解logback和log4j的区别 在SpringBoot默认的日志框架中,使用的是logback。但是在实际项目中,也有部分使…

    Java 2023年5月15日
    00
  • Java字符串常见的操作(比较,查找,替换等)

    Java字符串常见的操作 在Java中,字符串被定义为一个类,称为java.lang.String。Java中的字符串是不可变的,这意味着一旦创建了一个字符串,就不能更改它的内容,而是会创建一个新的字符串对象。 下面是Java字符串常见的操作: 创建字符串 在Java 中创建一个字符串非常容易,只需要将字符串括在两个引号之间即可: String str = …

    Java 2023年5月26日
    00
  • IDEA 当前在线人数和历史访问量的示例代码

    为了展示当前在线人数和历史访问量,网站可以利用后端技术和前端技术实现。 一、后端技术: 后端技术可以利用数据库和服务器进行实现。 数据库存储在线人数和历史访问量的数据。 首先,在数据库中创建一个数据表,包含两个字段:online_users 和 visit_count。分别用于存储当前在线人数和历史访问量的数据。其中,online_users 可以利用 se…

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