springboot+mybatis通过实体类自动生成数据库表的方法

下面我将详细讲解“springboot+mybatis通过实体类自动生成数据库表的方法”的完整攻略,其中会包含两个示例。

1. 引入依赖

首先,在工程的pom.xml文件中引入如下依赖:

<!-- Spring Boot 依赖 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter</artifactId>
    <version>2.4.3</version>
</dependency>

<!-- Spring Boot MyBatis 依赖 -->
<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>2.1.4</version>
</dependency>

<!-- MySQL 驱动依赖 -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.23</version>
</dependency>

2. 配置 MySQL 数据库

application.properties文件中配置 MySQL 数据库连接信息:

# 数据库配置
spring.datasource.url=jdbc:mysql://localhost:3306/db_example
spring.datasource.username=username
spring.datasource.password=password
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

3. 编写实体类

编写实体类User.java,用于生成对应的数据库表:

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

    // Getter and Setter 方法省略
}

4. 编写 MyBatis 映射文件

UserMapper.xml文件中编写 SQL 映射语句,用于生成对应的数据库表:

<?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.mapper.UserMapper">

    <resultMap id="BaseResultMap" type="com.example.entity.User">
        <id column="id" property="id"/>
        <result column="name" property="name"/>
        <result column="age" property="age"/>
    </resultMap>

    <sql id="Base_Column_List">
        id, name, age
    </sql>

    <insert id="insert" parameterType="com.example.entity.User">
        insert into user
        (<include refid="Base_Column_List"/>)
        values
        (#{id}, #{name}, #{age})
    </insert>

    <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
        select
        <include refid="Base_Column_List"/>
        from user
        where id =#{id}
    </select>

</mapper>

5. 启动项目

启动 Spring Boot 项目,MyBatis 在启动时会自动扫描com.example.entity包下的所有实体类,自动生成对应的数据库表。

示例一:新增数据

在控制器UserController.java中新增一个用户:

@RestController
@RequestMapping("/user")
public class UserController {

    @Autowired
    private UserMapper userMapper;

    @PostMapping("/add")
    public String addUser() {
        User user = new User();
        user.setId(1L);
        user.setName("Tom");
        user.setAge(18);
        userMapper.insert(user);
        return "添加成功";
    }
}

然后发送一个 POST 请求:http://localhost:8080/user/add,就可以在数据库中查看到添加的数据。

示例二:查询数据

在控制器UserController.java中查询一个用户:

@RestController
@RequestMapping("/user")
public class UserController {

    @Autowired
    private UserMapper userMapper;

    @GetMapping("/{id}")
    public User getUserById(@PathVariable Long id) {
        return userMapper.selectByPrimaryKey(id);
    }
}

然后发送一个 GET 请求:http://localhost:8080/user/1,就可以查询到数据库中 ID 为 1 的用户信息。

至此,就可以通过实体类自动生成数据库表了,希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:springboot+mybatis通过实体类自动生成数据库表的方法 - Python技术站

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

相关文章

  • Spring Boot 开发私有即时通信系统(WebSocket)

    Spring Boot是一个快速开发框架,可以帮助我们快速构建Web应用程序。在本攻略中,我们将使用Spring Boot和WebSocket创建一个私有即时通信系统。以下是完整攻略: 创建一个Maven项目,并在pom.xml文件添加以下依赖项: <dependency> <groupId>org.springframework.b…

    Java 2023年5月14日
    00
  • java中@requestMappling注解的使用

    Java中@RequestMapping注解的使用 在Java中,@RequestMapping注解是一个非常常用的注解,它用于将HTTP请求映射到控制器的处理方法上。在本文中,我们将详细讲解@RequestMapping注解的使用,并提供两个示例来说明如何使用这个注解。 基本用法 @RequestMapping注解可以用于类级别和方法级别。在类级别上使用@…

    Java 2023年5月18日
    00
  • Dom4j解析XML_动力节点Java学院整理

    Dom4j解析XML_动力节点Java学院整理 什么是Dom4j? Dom4j是一个为Java设计的XML API,它可以读取、写入、解析XML文件 Dom4j具有快速、高效和易于使用等特点,因此得到广泛应用 Dom4j的安装和配置 下载Dom4j:在Dom4j官网(http://dom4j.github.io/)下载最新的Dom4j Jar包 添加Dom4…

    Java 2023年5月27日
    00
  • Java女装商城系统的实现流程

    实现Java女装商城系统需要经过以下流程: 1. 确定需求 首先需要明确女装商城系统需要实现哪些功能,包括但不限于商品展示、购物车管理、订单管理、用户中心、支付接口等。根据需求可以确定整个系统的框架和功能模块。 示例说明1:商城系统需要具有商品分类、品牌、价格、尺码等筛选条件,这就需要对商品信息进行标准化和分类,以方便用户进行检索。 示例说明2:商城系统需要…

    Java 2023年5月24日
    00
  • 通过Spring Boot整合Mybatis分析自动配置详解

    通过Spring Boot整合Mybatis是非常常见的应用场景,它可以帮助Spring Boot快速集成Mybatis,使得开发人员可以更加便捷地进行数据库操作。接下来,我将详细讲解如何通过Spring Boot整合Mybatis以及相关的自动配置细节。 1. 添加依赖 首先,我们需要在pom.xml中添加Mybatis相关依赖。这里我们使用Mybatis…

    Java 2023年5月20日
    00
  • dockerfile-maven-plugin极简教程(推荐)

    下面是“dockerfile-maven-plugin极简教程(推荐)”的完整攻略: 1. 简介 dockerfile-maven-plugin是一个maven插件,可以将maven项目构建成Docker镜像。通过dockerfile-maven-plugin,我们可以将应用程序打包成Docker镜像并快速部署。 2. 安装 在pom.xml文件中添加以下依…

    Java 2023年5月20日
    00
  • Spring Boot 动态数据源示例(多数据源自动切换)

    下面我将详细讲解 Spring Boot 动态数据源示例(多数据源自动切换)的完整攻略。 什么是动态数据源 动态数据源是一种可以在程序运行时自动切换数据源的技术,它可以在不重启应用的情况下帮助我们实现多数据源的自动切换,非常便于开发和维护。在实践中,我们可以使用 Spring Boot 官方提供的 AbstractRoutingDataSource 类来实现…

    Java 2023年5月20日
    00
  • 强烈推荐MyBatis 三种批量插入方式的比较

    背景介绍 在数据处理方面,批量插入是优化数据处理效率的一个有效手段。MyBatis 也提供了三种批量插入的方式,分别是 foreach 元素、SQL 语句拼接、BatchExecutor 执行器,其中 BatchExecutor 是官方推荐使用的方式。本文将对三种方式进行比较分析,帮助读者更好地选择使用合适的方式。 三种方式比较 2.1 foreach 元素…

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