MybatisPlus 3.5.2

2022-08-22 21:06:47  阅读 64 次 评论 0 条

依赖

<!--mybatis-plus-->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.5.2</version>
</dependency>
//分页插件
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
    MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
    interceptor.addInnerInterceptor(new PaginationInnerInterceptor());
    return interceptor;
}

自动代码生成

FastAutoGenerator
                // 数据源配置
                .create("jdbc:mysql://localhost:3306/mybatis_plus?serverTimezone=Asia/Shanghai",
                        "root", "123456")

                // 全局配置
                .globalConfig(builder -> {
                    builder.author("tao") // 设置作者
//                            .enableSwagger() // 开启 swagger 模式
                            .commentDate("yyyy-MM-dd HH:mm:ss") // 注释日期格式
                            .outputDir(".\\src\\main\\java\\") // 指定输出目录
                            .disableOpenDir(); // 禁止打开输出目录
                })

                // 包配置
                .packageConfig(builder -> {
                    builder.parent("com.tao") // 设置父包名
                            .moduleName("mybatisplus") // 设置父包模块名
//                            .entity("pojo") // pojo实体类包名,其他包名同理
                            .pathInfo(Collections.singletonMap(OutputFile.xml, "src\\main\\resources\\mapper\\")); // 设置mapperXml生成路径
                })

                // 策略配置
                .strategyConfig(builder -> {
                    builder.addInclude("user")// 设置需要生成的表名
                            .addTablePrefix() //设置过滤表前缀
                            // entity配置
                            .entityBuilder()
                            .enableFileOverride()
                            .enableLombok() // 使用Lombok
                            .logicDeleteColumnName("delete_time") // 逻辑删除字段名
                            .naming(NamingStrategy.underline_to_camel) // 数据库表映射到实体的命名策略:下划线转驼峰命名
                            .columnNaming(NamingStrategy.underline_to_camel) // 数据库表字段映射到实体的命名策略:下划线转驼峰命名
                            .addTableFills(
                                    new Column("create_time", FieldFill.INSERT),
                                    new Column("update_time", FieldFill.INSERT_UPDATE)
                            ) //添加表字段填充,"create_time"字段自动填充为插入时间,"modify_time"字段自动填充为插入修改时间
                            .enableTableFieldAnnotation() // 开启生成实体时生成字段注解
                            .idType(IdType.AUTO) // 标记实例类的主键生成方式,如果插入时没有指定,刚自动分配一个,默认是雪花算法

                            //mapper配置
                            .mapperBuilder()
                            .enableFileOverride()
                            .superClass(BaseMapper.class) // 设置父类
                            .formatMapperFileName("%sMapper") // 格式化mapper文件名
                            .mapperAnnotation(Mapper.class) // 添加@Mapper注解

                            //service配置
                            .serviceBuilder()
                            .enableFileOverride()
                            .formatServiceFileName("%sService") // 格式化Service文件名,如:UserService
                            .formatServiceImplFileName("%sServiceImpl") // 格式化ServiceImpl文件名,如:UserServiceImpl
//                            .convertServiceFileName(entityName -> entityName + "Service")
//                            .convertServiceImplFileName(entityName -> entityName + "ServiceImpl")
                            .superServiceClass(IService.class) // 设置父类
                            .superServiceImplClass(ServiceImpl.class) // 设置父类

                            //controller配置
                            .controllerBuilder()
                            .enableFileOverride()
                            .formatFileName("%sController") // 格式化Controller文件名
                            .enableRestStyle() // 开启生成 @RestController 控制器
                            .build();
                })
                .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
                .execute();
本文地址:https://www.68686.ltd/?id=61
版权声明:本文为原创文章,版权归 wu1724 所有,欢迎分享本文,转载请保留出处!

发表评论


表情

还没有留言,还不快点抢沙发?