使用mybatisplus一键自动生成entity、mapper、service、controller层

先用idea创建一个Springboot项目

一、pom.xml依赖

    
        
            org.springframework.boot
            spring-boot-starter-web
        
        
            org.springframework.boot
            spring-boot-starter-test
            test
        

        
            org.projectlombok
            lombok
        

        
        
            org.mybatis
            mybatis
            3.5.11
        
        
            com.baomidou
            mybatis-plus-boot-starter
            3.5.3.1
        




        
            junit
            junit
            test
        

        
            mysql
            mysql-connector-java
            8.0.26
        


        
            com.baomidou
            mybatis-plus-generator
            3.5.3
        
        
            org.mybatis.spring.boot
            mybatis-spring-boot-starter
            3.0.0
        
        
            org.apache.velocity
            velocity-engine-core
            2.3
        

        
            org.freemarker
            freemarker
        
		
		
		
    

二、application.properties配置

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver #这是Mysql版本为8用的 5版本的自行查找
spring.datasource.url=jdbc:mysql://localhost:3306/数据库名  
spring.datasource.username=root     #数据库账号
spring.datasource.password=123456    #数据库密码

spring.jackson.date-format=yyyy-MM-dd HH:mm:ss   =
spring.jackson.time-zone=GMT+8    
spring.jackson.serialization.write-date-keys-as-timestamps=false

mybatis-plus.configuration.map-underscore-to-camel-case=true
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

mybatis-plus.mapper-locations=classpath:/mapper/*.xml  

mybatis-plus.global-config.db-config.logic-not-delete-value=0  #逻辑删除设置
mybatis-plus.global-config.db-config.logic-delete-value=1    #逻辑删除设置

spring.mvc.pathmatch.matching-strategy=ant_path_matcher

server.port=9999 #可写可不写,不写端口号默认为8080 比如被Vue占用端口的话就修改

三、自动生成文件配置

package com.aaa;


import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.OutputFile;
import com.baomidou.mybatisplus.generator.fill.Column;

import java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class MyTest {
    public static void main(String[] args) {
        FastAutoGenerator.create("jdbc:mysql:///aaa","root","123456")
                // 全局配置
                .globalConfig((scanner, builder) -> builder
                        .author("名字")//生成的作者名字,自行修改
                        .outputDir("这里写你项目的绝对路径例如C:\\src\\main\\java")
                )
                // 包配置
                .packageConfig(
                        (scanner, builder) ->
                                builder
                                        .parent("com.aaa")//在项目的那个文件夹下生成
                                        .pathInfo(Collections.singletonMap(OutputFile.xml, "绝对路径\\src\\main\\resources\\mapper")))
                // 策略配置
                .strategyConfig((scanner, builder) -> builder.addInclude(getTables(scanner.apply("请输入表名,多个英文逗号分隔?所有输入 all")))
                        .controllerBuilder().enableRestStyle().enableHyphenStyle()
                        .entityBuilder().enableLombok().addTableFills(
                                new Column("create_time", FieldFill.INSERT)
                        ).build())
                /*
                    模板引擎配置,默认 Velocity 可选模板引擎 Beetl 或 Freemarker
                   .templateEngine(new BeetlTemplateEngine())
                   .templateEngine(new FreemarkerTemplateEngine())
                 */
                .execute();


// 处理 all 情况

    }

    protected static List getTables(String tables) {
        return "all".equals(tables) ? Collections.emptyList() : Arrays.asList(tables.split(","));
    }

}

四、使用

运行输入要生成的表,输入完回车就行了

使用mybatisplus一键自动生成entity、mapper、service、controller层_第1张图片

你可能感兴趣的:(mybatis,spring,boot,mysql)