教你们如何快速的使用Mybatis-Plus的代码生成器

10 篇文章 0 订阅
6 篇文章 0 订阅
本文介绍了如何在SpringBoot项目中集成Mybatis-Plus 3.5.1版本,并详细讲解了数据源配置、全局及包配置、策略配置和模板引擎的使用步骤。只需调整数据源和表名,即可快速生成定制化的实体、service和Mapper文件。
摘要由CSDN通过智能技术生成

我要说的代码生成器的新版的 3.5.1+ 的

要使用mybatis-plus,就需要一个springboot项目,我之前写过,有不会的小伙伴可以去翻一翻

以下是在原有的springboot项目基础上进行的       喜欢的小伙伴  点点关注  给个三连

在pom.xml里面添加一下依赖

<!--        mybatis-plus-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.3.4</version>
        </dependency>
<!--        代码生成器-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-generator</artifactId>
            <version>3.5.1</version>
        </dependency>
<!--        模板引擎-->
        <dependency>
            <groupId>org.freemarker</groupId>
            <artifactId>freemarker</artifactId>
            <version>2.3.31</version>
        </dependency>
<!--       swagger-->
        <dependency>
            <groupId>io.swagger</groupId>
            <artifactId>swagger-annotations</artifactId>
            <version>1.6.3</version>
        </dependency>

之后,重头戏来了,!!!!!!!!!

public static void main(String[] args) {
        //1.配置数据源
        FastAutoGenerator.create("jdbc:mysql://localhost:3306/send","root","root")

                // 2.全局配置
                .globalConfig(builder -> {
                    builder.author("初bai")   //  设置作者
                            .outputDir(System.getProperty("user.dir") + "/src/main/java")          
                                                   // 设置输出路径
                            .commentDate("yyyy-MM-dd hh:mm:ss") // 注释日期
                            .dateType(DateType.ONLY_DATE) // 定义生成实体类日期的类型
                            .fileOverride() // 覆盖之前的文件
                            .enableSwagger() // 开启 swagger 模式
                            .disableOpenDir(); // 禁止打开输出目录,默认打开
                })

                // 3.包配置
                .packageConfig(builder -> {
                    builder.parent("com.chubai")  // 设置父包名
                            .moduleName("send")  // 设置模块包名
                            .entity("entity") // 实体类包名
                            .service("service") // service 包名
                            .serviceImpl("service.impl") // serviceImpl包名
                            .mapper("mapper") // mapper包名
                            .xml("xml") // xml包名
                            .controller("controller") // controller包名
                            .other("utils") // 其他文件包名
                            .other("enums") // 其他文件包名
    .pathInfo(Collections.singletonMap(OutputFile.mapperXml,System.getProperty("user.dir") + "/src/main/java/com/chubai/send/mapper/xml"));     // 配置 **Mapper.xml   路径信息:项目的 mapper 目录下
                })

                // 4.策略配置
                .strategyConfig(builder -> {
                    builder.addInclude("sys_user","send_bomb","send_log")   //设置需要生成的数据表名
                            .addTablePrefix("sys_","send_","send_")  //设置需要过滤的前缀

                            //4.1实体类配置
                            .entityBuilder()
                            .enableLombok()   //开启lombok
                            .disableSerialVersionUID()  //不实现序列化接口
                            .logicDeleteColumnName("deleted")  //逻辑删除字段
                            .naming(NamingStrategy.underline_to_camel)  //数据库表映射到实体的命名策略,下划线转驼峰
                            .columnNaming(NamingStrategy.underline_to_camel)  //数据库表字段映射到实体的命名策略,下划线转驼峰
                            .addTableFills(
                                    new Column("create_time", FieldFill.INSERT),
                                    new Column("modify_time", FieldFill.INSERT_UPDATE)
                            )   //添加表字段填充,“create_time”自动填充入插入时间,“modify_time”自动填充修改时间
                            .enableTableFieldAnnotation()   //开启生成实体类是生成字段注解


                            //4.2service配置
                            .serviceBuilder()
                            .formatServiceFileName("%sService") //格式化service接口文件名
                            .formatServiceImplFileName("%sServiceImpl") //格式化serviceImpl接口文件名

                            //4.3Mapper配置
                            .mapperBuilder()
                            .superClass(BaseMapper.class)  //设置父类
                            .formatMapperFileName("%sMapper")  //格式化mapper文件名
                            .enableMapperAnnotation()  //开启@Mapper注解
                            .formatXmlFileName("%sXml")  //格式化Xml 文件名

                            //4.4Controller配置
                            .controllerBuilder()
                            .formatFileName("%sController")  //格式化controller文件名
                            .enableRestStyle();  //开启生成@RestController

                })

                // 5.模板引擎配置
                .templateEngine(new FreemarkerTemplateEngine())

                // 6.执行
                .execute();
    }

我这个可以直接拿来用,改个数据连接,表名,即可

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值