代码自动生成器mybatis-plus:Java你已经长大了,该学会自己敲代码了

今天跟大家说一个用着非常爽,且极大提高开发效率神器;再也不用熬夜加班去写一个个重复对应的controller、entity、mapper、service、impl,包括注释、可以注释作者名、时间等等。

特有趣,且非常强大的 mybatis-plus,除了常用的核心功能分页插件外,它还有一个特 强的核心功能就是今天的主题:代码自动生成器

在这里插入图片描述

MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。

开始跑起来

导入pom.xml

<dependency>
     <groupId>com.baomidou</groupId>
     <artifactId>mybatis-plus-boot-starter</artifactId>
     <version>3.0.5</version>
</dependency>
<dependency>
     <groupId>org.apache.velocity</groupId>
     <artifactId>velocity-engine-core</artifactId>
     <version>2.0</version>
</dependency>

奉献所有代码,如果有什么问题底下评论见,没有的话也记得点个赞,关注一下也是极好的

要注意两个关键点:

  1. 要改成自己的数据库名:

jdbc:mysql://localhost:3306/自己的数据库名

config.setUrl("jdbc:mysql://localhost:3306/miniprogram_admin?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone = GMT");
        config.setDriverName("com.mysql.cj.jdbc.Driver");
  1. 设置要映射表名
strategyConfig.setInclude("banner");//设置要映射表名
import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
import com.baomidou.mybatisplus.generator.config.GlobalConfig;
import com.baomidou.mybatisplus.generator.config.PackageConfig;
import com.baomidou.mybatisplus.generator.config.StrategyConfig;
import com.baomidou.mybatisplus.generator.config.po.TableFill;
import com.baomidou.mybatisplus.generator.config.rules.DateType;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
import java.util.ArrayList;
public class Code {
    public static void main(String[] args) {
        //构建一个代码自动生成器对象
        AutoGenerator mpg = new AutoGenerator();
        //1、全局配置
        GlobalConfig gc = new GlobalConfig();
        String projectPath = System.getProperty("user.dir");
        gc.setOutputDir(projectPath+"/src/main/java");
        gc.setAuthor("一颗剽悍的种子");
        gc.setServiceName("%sService");
        //是否覆盖已有文件
        gc.setFileOverride(false);
        gc.setIdType(IdType.ID_WORKER);
        gc.setDateType(DateType.ONLY_DATE);
        mpg.setGlobalConfig(gc);
        //2、设置数据源
        DataSourceConfig config = new DataSourceConfig();
        config.setUrl("jdbc:mysql://localhost:3306/miniprogram_admin?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone = GMT");
        config.setDriverName("com.mysql.cj.jdbc.Driver");
        config.setUsername("root");
        config.setPassword("123");
        config.setDbType(DbType.MYSQL);
        mpg.setDataSource(config);
        //3、包的配置
        PackageConfig pc = new PackageConfig();
        pc.setModuleName("com");
        pc.setParent("com");
        pc.setEntity("entity");
        pc.setMapper("mapper");
        pc.setService("service");
        pc.setController("controller");
        mpg.setPackageInfo(pc);
        //4、策略配置
        StrategyConfig strategyConfig = new StrategyConfig();
        strategyConfig.setInclude("banner");//设置要映射表名
        strategyConfig.setNaming(NamingStrategy.underline_to_camel);
        strategyConfig.setColumnNaming(NamingStrategy.underline_to_camel);
        //自动填充配置
        TableFill create = new TableFill("create", FieldFill.INSERT);
        TableFill modified = new TableFill("modified", FieldFill.INSERT_UPDATE);
        ArrayList<TableFill> tableFills = new ArrayList<>();
        tableFills.add(create);
        tableFills.add(modified);
        strategyConfig.setTableFillList(tableFills);
        strategyConfig.setRestControllerStyle(true);
        mpg.setStrategy(strategyConfig);
        //执行生成
        mpg.execute();
    }
}

激动人心的时候,点击触发

在这里插入图片描述
生成包
在这里插入图片描述
生成对应的controller、entity、mapper、service、impl以及注释

在这里插入图片描述
在这里插入图片描述
最后:

为了更好的阅读体验,我把想说的话都放在了下面,嘿嘿。

我是一颗剽悍的种子 把我会的,认真的分享 是我写博客一直不变的信条。
如果你能看到这篇博文,说明咱们还是很有缘的;希望能带给你一些许帮助,创作的不易,
把我文章的知识带走,你的三连留下,点赞,评论,关注,是我最大的动力。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值