1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 代码自动生成器

代码自动生成器

时间:2023-01-21 18:00:32

相关推荐

代码自动生成器

仅供自己学习记录所用

CodeGenerator类

import com.baomidou.mybatisplus.annotation.DbType;import com.baomidou.mybatisplus.annotation.FieldFill;import com.baomidou.mybatisplus.annotation.IdType;import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;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 mons.lang.StringUtils;import java.util.ArrayList;import java.util.Scanner;//代码自动生成器public class CodeGenerator {public static String scanner(String tip) {Scanner scanner = new Scanner(System.in);StringBuilder help = new StringBuilder();help.append("请输入" + tip + ":");System.out.println(help.toString());if (scanner.hasNext()) {String ipt = scanner.next();if (StringUtils.isNotBlank(ipt)) {return ipt;}}throw new MybatisPlusException("请输入正确的" + tip + "!");}public static void main(String[] args) {//构建一个代码自动生成器AutoGenerator mpg = new AutoGenerator();//1、全局配置GlobalConfig gc = new GlobalConfig();String prpjectPath = System.getProperty("user.dir");gc.setOutputDir(prpjectPath+"/src/main/java");gc.setAuthor("作者名");gc.setOpen(false);gc.setFileOverride(false);//是否覆盖gc.setServiceName("%sService");//去Servic的前缀gc.setIdType(IdType.ID_WORKER);gc.setDateType(DateType.ONLY_DATE);gc.setSwagger2(true);mpg.setGlobalConfig(gc);//2、设置数据源DataSourceConfig dsc = new DataSourceConfig();dsc.setUrl("jdbc:mysql://127.0.0.1:3306/test?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai");dsc.setDriverName("com.mysql.cj.jdbc.Driver");dsc.setUsername("root");dsc.setPassword("root");dsc.setDbType(DbType.MYSQL);mpg.setDataSource(dsc);//包的配置PackageConfig pc = new PackageConfig();pc.setParent("org.jeecg");pc.setModuleName("modules");pc.setController("controller");pc.setEntity("entity");pc.setService("service");pc.setMapper("mapper");mpg.setPackageInfo(pc);// 策略配置StrategyConfig strategy = new StrategyConfig();// strategy.setInclude("user,ces_field_kongj");strategy.setNaming(NamingStrategy.underline_to_camel);strategy.setColumnNaming(NamingStrategy.underline_to_camel);// strategy.setSuperEntityClass("你自己的父类实体,没有就不用设置!");strategy.setEntityLombokModel(true);strategy.setRestControllerStyle(true);strategy.setLogicDeleteFieldName("deleted");//自动填充配置TableFill createTime = new TableFill("createTime", FieldFill.INSERT);TableFill updateTime = new TableFill("updateTime", FieldFill.INSERT_UPDATE);ArrayList<TableFill> tableFills = new ArrayList<>();tableFills.add(createTime);tableFills.add(updateTime);strategy.setTableFillList(tableFills);//乐观锁strategy.setVersionFieldName("version");strategy.setRestControllerStyle(true);strategy.setControllerMappingHyphenStyle(true);//确定需要生成模板的表名strategy.setInclude(scanner("表名,多个英文逗号分割").split(","));mpg.setStrategy(strategy);mpg.execute();//执行}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。