Spring Boot入门(15):一键生成,轻松搭建你的Spring Boot+MyBatis-Plus项目!

1. 前言

Spring Boot 是一种全新的基于 Spring 框架的用于快速开发新一代应用程序的框架。它能够使开发者通过简单的配置快速搭建项目,并能够提供常见的功能模块,如数据库访问、事务管理、Web 开发和安全管理等。而 MyBatis-Plus 是一个功能强大的 MyBatis 增强工具,它基于 MyBatis 本身进行了扩展,可以大幅度减少开发工作量,提高开发效率。

本文将介绍如何使用 MyBatis-Plus 的 AutoGenerator 工具自动生成项目骨架代码,以此快速搭建 Spring Boot 项目的基础代码框架。

2. 摘要

本文将使用 MyBatis-Plus 的 AutoGenerator 工具来生成 Spring Boot 项目的骨架代码。首先,我们将介绍 MyBatis-Plus 的基本概念和配置。然后,我们将使用 AutoGenerator 工具自动生成项目的实体类、Mapper 接口、Mapper XML 文件和 Service 层代码。最后,我们将介绍如何使用这些生成的代码来进行数据的增删改查操作。

3. 正文

3.1 MyBatis-Plus 基本概念

MyBatis-Plus 是一个 MyBatis 的增强工具包,它提供了许多实用的功能,例如自动生成代码,分页插件,性能分析插件等。使用 MyBatis-Plus 可以大大减少开发人员的开发时间和代码量。

3.2 引入 MyBatis-Plus 依赖

要使用 MyBatis-Plus,首先需要在项目的 pom.xml 文件中引入依赖:

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

3.3 配置 MyBatis-Plus Generator

MyBatis-Plus 提供了一个名为 AutoGenerator 的代码生成器,可以自动生成实体类、Mapper 接口、Mapper XML 文件和 Service 层代码。为了使用 AutoGenerator,需要在项目的配置文件中配置以下属性:

# 数据库驱动
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
# 数据库连接地址
spring.datasource.url=jdbc:mysql://localhost:3306/db_test?useUnicode=true&characterEncoding=utf8
# 数据库用户名
spring.datasource.username=root
# 数据库密码
spring.datasource.password=root

# Mybatis-Plus Generator 配置
mybatis-plus.global-config.db-config.table-prefix=tb_
mybatis-plus.generator.author=author
mybatis-plus.generator.file-out-impl=org.mybatis.generator.internal.DefaultFileOutput
mybatis-plus.generator.template-path=classpath:/templates/mapper
mybatis-plus.generator.file-overwrite=true
mybatis-plus.generator.xml-disabled=true
mybatis-plus.generator.jdbc.driverClass=${spring.datasource.driver-class-name}
mybatis-plus.generator.jdbc.url=${spring.datasource.url}
mybatis-plus.generator.jdbc.userId=${spring.datasource.username}
mybatis-plus.generator.jdbc.password=${spring.datasource.password}

这些属性的含义如下:

  • spring.datasource.driver-class-name:数据库驱动
  • spring.datasource.url:数据库连接地址
  • spring.datasource.username:数据库用户名
  • spring.datasource.password:数据库密码
  • mybatis-plus.global-config.db-config.table-prefix:MyBatis-Plus 自动生成的实体类对应的数据库表的表名前缀
  • mybatis-plus.generator.author:生成代码的作者名称
  • mybatis-plus.generator.file-out-impl:生成代码的输出方式
  • mybatis-plus.generator.template-path:Mapper XML 文件的模板路径
  • mybatis-plus.generator.file-overwrite:是否覆盖已有的文件
  • mybatis-plus.generator.xml-disabled:是否生成 Mapper XML 文件
  • mybatis-plus.generator.jdbc.driverClass:数据库驱动
  • mybatis-plus.generator.jdbc.url:数据库连接地址
  • mybatis-plus.generator.jdbc.userId:数据库用户名
  • mybatis-plus.generator.jdbc.password:数据库密码

3.4 自动生成项目骨架代码

使用 AutoGenerator 自动生成实体类、Mapper 接口、Mapper XML 文件和 Service 层代码的步骤如下:

  1. 创建一个空的 Maven 项目。

  2. 在项目的 pom.xml 文件中引入 MyBatis-Plus 依赖,如上面所示。

  3. 在项目的 src/main/resources 目录下创建一个名为 generator.properties 的文件,配置 MyBatis-Plus Generator 的属性,如上面所示。

  4. 在项目的 src/main/java 目录下创建一个名为 com.example.demo.generator 包,在该包下创建一个名为 CodeGenerator 的 Java 类,代码如下:

public class CodeGenerator {

    public static void main(String[] args) {
        // 数据源配置
        DataSourceConfig dataSourceConfig = new DataSourceConfig.Builder("jdbc:mysql://localhost:3306/db_test?useUnicode=true&characterEncoding=utf8", "root", "root")
                .dbType(DbType.MYSQL)
                .typeConvert(new MySqlTypeConvert())
                .build();

        // 策略配置
        StrategyConfig strategyConfig = new StrategyConfig.Builder()
                .addInclude("tb_user") // 设置需要生成代码的表名
                .naming(NamingStrategy.underline_to_camel)
                .build();

        // 全局配置
        GlobalConfig globalConfig = new GlobalConfig.Builder()
                .outputDir(System.getProperty("user.dir") + "/src/main/java")
                .author("Author")
                .fileOverride(true)
                .build();

        // 包名配置
        PackageConfig packageConfig = new PackageConfig.Builder()
                .parent("com.example.demo")
                .entity("entity")
                .mapper("mapper")
                .service("service")
                .controller("controller")
                .build();

        // 代码生成器
        AutoGenerator autoGenerator = new AutoGenerator(dataSourceConfig);
        autoGenerator.setTemplateEngine(new FreemarkerTemplateEngine());
        autoGenerator.setStrategy(strategyConfig);
        autoGenerator.setGlobalConfig(globalConfig);
        autoGenerator.setPackageInfo(packageConfig);
        autoGenerator.execute();
    }

}
  1. 运行 CodeGenerator 类,即可自动生成实体类、Mapper 接口、Mapper XML 文件和 Service 层代码。

执行完毕后,将会生成如下代码:

- src
    - main
        - java
            - com.example.demo
                - entity
                    - User.java    // 自动生成的实体类
                - mapper
                    - UserMapper.java    // 自动生成的Mapper接口
                - service
                    - IUserService.java    // 自动生成的Service接口
                - controller
                    - UserController.java    // 自动生成的Controller接口

示例截图如下:
在这里插入图片描述

使用自动生成的代码进行数据操作

生成的代码包括实体类、Mapper 接口、Mapper XML 文件和 Service 层代码。下面是一个使用自动生成的代码进行增删改查操作的示例:

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

    @Autowired
    private UserService userService;

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

    @DeleteMapping("/{id}")
    public boolean deleteUser(@PathVariable("id") Long id) {
        return userService.removeById(id);
    }

}

4. 小结

通过整合 Spring Boot 和 MyBatis-Plus AutoGenerator,我们可以自动生成项目骨架代码,从而加快项目开发速度和提高开发效率。以下是一些需要注意的点:

  • 需要正确配置 pom.xml 文件,包含必要的依赖和插件。

  • 自动生成的代码中可能存在一些冗余或不必要的代码,需要手动修改或删除。

  • 自动生成的代码可能不符合个性化需求,需要手动修改或添加。

  • 自动生成的代码应该按照一定的规范进行命名和组织,以方便后续的维护。

总的来说,MyBatis-Plus AutoGenerator 可以帮助我们快速搭建项目骨架,让开发变得更加高效和便捷,但是在使用过程中还是需要注意一些细节。

  • 30
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是基于 Spring BootMyBatis-Plus、Thymeleaf 和 Bootstrap 的留言板的实现步骤: 1. 创建 Spring Boot 项目 在 IDEA 中创建一个 Spring Boot 项目,选择 Web 和 Thymeleaf 作为依赖。 2. 添加 MyBatis-Plus 依赖 在 pom.xml 文件中添加 MyBatis-Plus 依赖: ```xml <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.0</version> </dependency> ``` 3. 创建留言板数据表 在 MySQL 中创建一个名为 message_board 的数据表,包含以下字段: ```sql CREATE TABLE `message_board` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL COMMENT '留言人姓名', `email` varchar(50) NOT NULL COMMENT '留言人邮箱', `content` varchar(255) NOT NULL COMMENT '留言内容', `create_time` datetime NOT NULL COMMENT '创建时间', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='留言板'; ``` 4. 创建 MyBatis-Plus 实体类和 Mapper 使用 MyBatis-Plus 的代码生成器,生成 Message 实体类和 MessageMapper 接口。 5. 编写 Service 层 创建 MessageService 接口和 MessageServiceImpl 实现类,其中 MessageServiceImpl 实现类注入 MessageMapper,实现增删改查等方法。 6. 编写 Controller 层 创建 MessageController 类,其中注入 MessageService,实现留言板的展示、添加留言和删除留言等功能。 7. 编写 Thymeleaf 页面 在 templates 目录下创建 message.html 页面,使用 Thymeleaf 和 Bootstrap 实现留言板的展示和添加留言的表单。 8. 运行项目 使用 IDEA 运行项目,在浏览器中访问 http://localhost:8080/message 即可看到留言板页面。 以上就是基于 Spring BootMyBatis-Plus、Thymeleaf 和 Bootstrap 的留言板的实现步骤,你可以参考这些步骤来实现自己的留言板。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值