MybatisPlus代码自动生成详细配置

MybatisPlus代码自动生成详细配置

最近使用mybatisplus来做数据层操作越来越多了,对于一般的Java web项目来说正所谓“天下的代码一般黑”哈哈哈。
项目的包结构都是一个逻辑,基础包无非是controller,eneity,service,impl,mapper这几个,
这些包的代码格式也大概是固定的,至于config和utils这些包则根据我们自己的需要来写了。
对于上面的基础包,mybatisplus中有方法帮我们
自动生成,当然也只是帮我们生成包名和类结构,业务层的逻辑还是得自己编写。
直接放代码吧:
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;
import java.util.List;
public class JCode {
    public static void main(String[] args) {
        //代码自动生成器对象
        AutoGenerator jcode = new AutoGenerator();
        //全局配置
        GlobalConfig jconfig = new GlobalConfig();
        String jpath = System.getProperty("user.dir");//作用域
        jconfig.setOutputDir(jpath+"/src/main/java");//生成包的路径
        jconfig.setAuthor("XX");//作者名字
        jconfig.setOpen(false);
        jconfig.setFileOverride(false);
        jconfig.setIdType(IdType.ASSIGN_ID);//数据库主键id雪花算法自增
        jconfig.setDateType(DateType.ONLY_DATE);//日期格式
        jconfig.setSwagger2(true);//启用Swagger,自动生成swagger风格的注释
        jcode.setGlobalConfig(jconfig);
        //设置数据源
        DataSourceConfig jdata = new DataSourceConfig();
        jdata.setUrl("放你数据库的链接");
        jdata.setDriverName("com.mysql.cj.jdbc.Driver");
        jdata.setUsername("数据库用户名");
        jdata.setPassword("数据库密码");
        jdata.setDbType(DbType.MYSQL);
        jcode.setDataSource(jdata);
        //配置生成包,自动生成包的名字,下面是我用的
        PackageConfig jpackage = new PackageConfig();
        jpackage.setParent("com.jyan");
        jpackage.setEntity("entity");
        jpackage.setMapper("mapper");
        jpackage.setService("service");
        jpackage.setServiceImpl("service/impl");
        jpackage.setController("controller");
        jcode.setPackageInfo(jpackage);
        //策略配置
        StrategyConfig jstrategy = new StrategyConfig();
        String[] n={"article","category","comments","user"};
        jstrategy.setInclude(n);//这个n就是你要自动生成的实体
        jstrategy.setNaming(NamingStrategy.underline_to_camel);//驼峰命名
        jstrategy.setColumnNaming(NamingStrategy.underline_to_camel);
        jstrategy.setEntityLombokModel(true);
        //自动填充配置
        TableFill jct = new TableFill("created_time", FieldFill.INSERT);//数据库插入修改时时间自动填充
        TableFill jUt = new TableFill("update_time", FieldFill.UPDATE);
        List<TableFill> jt = new ArrayList<>();
        jt.add(jct);
        jt.add(jUt);
        jstrategy.setTableFillList(jt);
        jcode.setStrategy(jstrategy);


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

基本的项目这样配置就足够用了

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值