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日

相关文章

  • java实现简单控制台通讯录

    下面是“Java实现简单控制台通讯录”的完整攻略,包含以下几个步骤。 步骤一:确定通讯录数据结构 为了存储通讯录信息,我们需要先定义一个合适的数据结构。这里我们可以使用Java中的HashMap来存储联系人的姓名和电话号码。 HashMap<String, String> contacts = new HashMap<>(); 步骤二…

    Java 2023年5月19日
    00
  • Java数据库连接池连接Oracle过程详解

    Java数据库连接池连接Oracle过程详解 本文将详细讲解Java数据库连接池连接Oracle的过程,包括连接池的作用、如何配置连接池、连接池连接Oracle的步骤、注意事项等。 连接池的作用 连接池是为了提高系统性能和稳定性而设计的。在Java中,使用连接池可以避免频繁地打开和关闭数据库连接,从而节省系统资源。当一个请求需要访问数据库时,连接池会从连接池…

    Java 2023年6月16日
    00
  • 浅谈Maven的安装及修改为阿里云下载依赖

    下面是详细的“浅谈Maven的安装及修改为阿里云下载依赖”的完整攻略。 一、Maven的安装 下载Maven:打开官方网站 https://maven.apache.org/download.cgi 找到最新的 Maven 安装包,选择apache-maven-x.x.x-bin.zip下载。 安装Maven:将下载的 Maven 安装包解压到指定目录下(如…

    Java 2023年5月20日
    00
  • Java开发之spring security实现基于MongoDB的认证功能

    Java开发之spring security实现基于MongoDB的认证功能 介绍 本文将详细介绍如何使用Spring Security实现基于MongoDB的认证功能,包括用户注册、登录、忘记密码等功能。Spring Security是一个开源框架,旨在为Java应用提供身份验证和授权保护。MongoDB是一种基于文档的非关系型数据库,它的内容通常以JSO…

    Java 2023年5月20日
    00
  • 什么是Java反射?

    Java反射( Java Reflection )是指在运行时动态地从已有的类中获取信息以及操作对象的能力。反射允许我们在程序运行期间可以检查、获取和修改任意一个类的信息,包括它的注解、成员变量、方法以及构造器等内容。在Java中使用反射,我们可以实现动态地加载和调用类,获取泛型信息等。下面是Java反射的使用攻略。 1. 获取类对象 我们可以通过 Clas…

    Java 2023年5月11日
    00
  • Android编程之匿名内部类与回调函数用法分析

    Android编程之匿名内部类与回调函数用法分析 什么是匿名内部类 匿名内部类是一种没有类名的内部类,直接使用new来创建,并且实现了某个接口或者继承了某个类。使用场景通常是在需要实现较为简单的接口或者重写某个类中的方法时使用,避免了创建过多的类文件。 如何使用匿名内部类实现回调函数 在Android编程中,回调函数通常用于实现异步处理,将处理结果返回给调用…

    Java 2023年5月26日
    00
  • Spring MVC整合FreeMarker的示例

    针对Spring MVC整合FreeMarker的示例,我将给出完整的攻略,包含以下内容: 环境准备 配置FreeMarker 编写Controller 编写FreeMarker模板 示例演示 下面我们详细讲解每一项内容。 环境准备 首先需要准备好环境。在本示例中,我们将使用以下环境: JDK 8 Maven 3 Spring 5 FreeMarker 2.…

    Java 2023年5月19日
    00
  • SpringBoot 中使用JSP的方法示例

    Spring Boot是一个轻量级的框架,它可以快速地构建基于Java的Web应用程序。相比于Spring Framework而言,Spring Boot带来了更加方便的配置方式,同时也提供了一些默认的配置,让开发者快速构建应用程序。但是,在默认的情况下,Spring Boot并不支持JSP作为视图层,若要使用JSP需要另外进行配置。下面就是Spring B…

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