• 【Mybatis-Plus在SpringBoot项目中的使用(自动代码生成,太方便了!)】


    Mybatis-Plus在SpringBoot项目中的使用(自动代码生成,太方便了!)

    mybatis-plus官网:https://baomidou.com/

    在这里插入图片描述

    1、使用前提需创建一个SpringBoot项目

    在pom.xml文件的中添加下列依赖

     <!-- mysql8 -->
            <dependency>
                <groupId>com.mysql</groupId>
                <artifactId>mysql-connector-j</artifactId>
            </dependency>
     <!-- mybatis-plus -->
            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>mybatis-plus-boot-starter</artifactId>
                <version>3.5.2</version>
            </dependency>
            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>mybatis-plus-generator</artifactId>
                <version>3.5.2</version>
            </dependency>
            <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        	</dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
            </dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25

    2、查看官方文档中的代码生成器,在test文件夹下编写CodeGenerator.java文件

    在这里插入图片描述

    复制快速生成里面的代码到CodeGenerator.java文件的main方法中,

    注意
    > 1、设置的生成代码输出目录要在你的项目的java目录绝对路径下(即在本地电脑上的完整路径),会根据父包名自动生成代码到父包下,
    2、parent父包名为你项目的启动器的上级目录,
    3、mapper.xml的生成路径放在你的项目的src\main\resources\mapper\+moduleName下,modulName是你自己在resources目录下创建的mapper文件夹下的文件夹目录
    4、设置表名时可以同时设置多张表,表名中间用英文逗号隔开
    5、可以设置需要过滤的表前缀,比如你的表名是:t_user,c_user,可以设置对应的前缀进行过滤

    FastAutoGenerator.create("url", "username", "password")
        .globalConfig(builder -> {
            builder.author("baomidou") // 设置作者
                .enableSwagger() // 开启 swagger 模式
                .fileOverride() // 覆盖已生成文件
                .outputDir("D://"); // 指定输出目录
        })
        .dataSourceConfig(builder -> builder.typeConvertHandler((globalConfig, typeRegistry, metaInfo) -> {
            int typeCode = metaInfo.getJdbcType().TYPE_CODE;
            if (typeCode == Types.SMALLINT) {
                // 自定义类型转换
                return DbColumnType.INTEGER;
            }
            return typeRegistry.getColumnType(metaInfo);
    
        }))
        .packageConfig(builder -> {
            builder.parent("com.baomidou.mybatisplus.samples.generator") // 设置父包名
                .moduleName("system") // 设置父包模块名
                .pathInfo(Collections.singletonMap(OutputFile.xml, "D://")); // 设置mapperXml生成路径
        })
        .strategyConfig(builder -> {
            builder.addInclude("t_simple") // 设置需要生成的表名
                .addTablePrefix("t_", "c_"); // 设置过滤表前缀
        })
        .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
        .execute();
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27

    3、上面内容编辑正确后,直接运行main方法,运行成功后就可以在项目中看到自动生成的文件夹(我的父包模块名modulName为sys)

    在这里插入图片描述

    可以看到直接根据你的设置的表自动生成一系列数据库服务所需的代码

    在这里插入图片描述
    在这里插入图片描述

  • 相关阅读:
    OSPF基础
    matlab gui设计入门与实战,matlab gui编程教程
    hoops编程指南:04.4用户交互突出显示
    Navigation 组件使用入门
    智慧公厕领先品牌:卫生、智能、环保
    【物理应用】基于相场法模拟金属镍的晶粒的长大过程附matlab完整代码
    SyntaxError: Non-UTF-8 code starting with ‘\xb3‘ in file解决方案
    elasticsearch快照生成与恢复
    【Linux】之Jumpserver堡垒机添加linux主机资产
    二叉排序树的删除操作的实现(思路分析)
  • 原文地址:https://blog.csdn.net/qq_62124267/article/details/133275259