博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MyBatisPlus根据数据库自动生成后台包及代码逻辑
阅读量:563 次
发布时间:2019-03-09

本文共 3861 字,大约阅读时间需要 12 分钟。

比较重要的几个配置(代码中有,此处重点突出)

1.代码生成路径

gc.setOutputDir(path+"/src/main/java");//  代码生成路劲

2.声明数据库参数

DataSourceConfig dc=new DataSourceConfig();            dc.setUrl("jdbc:mysql://127.0.0.1:3306/02-tingyu?useSSL=false&useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai");            // dsc.setSchemaName("public");            dc.setDriverName("com.mysql.jdbc.Driver");            dc.setUsername("root");            dc.setPassword("123456");

3.声明包结构

PackageConfig pc=new PackageConfig();            pc.setParent("com.bjsxt")                    .setMapper("mapper")                    .setService("service")                    .setController("controller")                    .setEntity("pojo")                    .setXml("mapper");

4.是否设置实体类生成格式lombok(完整代码中配置的是生成,若不需要,可以删除)

//5.策略生成            StrategyConfig sc=new StrategyConfig();            sc.setCapitalMode(true) //全局大写命名                .setEntityLombokModel(true)//设置实体类生成格式为lombok                .setNaming(NamingStrategy.underline_to_camel) // 数据库表映射到实体的命名策略                .setTablePrefix("t_")                .setInclude("t_admin" ,                        "t_admin_role" ,                        "t_company" ,                        "t_host" ,                        "t_host_power" ,                        "t_married_person" ,                        "t_menu" ,                        "t_order" ,                        "t_planner" ,                        "t_role" ,                        "t_role_menu"); // 生成的表,多个表继续传递即可,String类型的可变参数

以下是完成代码

//1. 创建代码生成器对象            AutoGenerator auto=new AutoGenerator();        //2.声明全局配置策略            GlobalConfig gc=new GlobalConfig();            String path = System.getProperty("user.dir");//动态获取当前项目的路径            System.out.println(path);            gc.setFileOverride(false);// 是否覆盖同名文件,默认是false            gc.setActiveRecord(true);// 不需要ActiveRecord特性的请改为false            gc.setEnableCache(false);// XML 二级缓存            gc.setBaseResultMap(true);// XML ResultMap            gc.setBaseColumnList(true);// XML columList            gc.setOutputDir(path+"/src/main/java");//  代码生成路劲            gc.setIdType(IdType.AUTO);//设置主键策略        //3.声明数据库参数            DataSourceConfig dc=new DataSourceConfig();            dc.setUrl("jdbc:mysql://127.0.0.1:3306/02-tingyu?useSSL=false&useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai");            // dsc.setSchemaName("public");            dc.setDriverName("com.mysql.jdbc.Driver");            dc.setUsername("root");            dc.setPassword("123456");        //4.包配置参数            PackageConfig pc=new PackageConfig();            pc.setParent("com.huletian")                    .setMapper("mapper")                    .setService("service")                    .setController("controller")                    .setEntity("pojo")                    .setXml("mapper");        //5.策略生成            StrategyConfig sc=new StrategyConfig();            sc.setCapitalMode(true) //全局大写命名                .setEntityLombokModel(true)//设置实体类生成格式为lombok                .setNaming(NamingStrategy.underline_to_camel) // 数据库表映射到实体的命名策略                .setTablePrefix("t_")                .setInclude("t_admin" ,                        "t_admin_role" ,                        "t_company" ,                        "t_host" ,                        "t_host_power" ,                        "t_married_person" ,                        "t_menu" ,                        "t_order" ,                        "t_planner" ,                        "t_role" ,                        "t_role_menu"); // 生成的表,多个表继续传递即可,String类型的可变参数        //6.将参数对象注入到代码生成器对象中           auto.setGlobalConfig(gc);           auto.setDataSource(dc);           auto.setPackageInfo(pc);           auto.setStrategy(sc);        //7.执行生成            auto.execute();        System.out.println("生成成功");

将代码粘贴到test测试类中执行即可(注意要配置MybatisPlus依赖或者jar)

转载地址:http://rktpz.baihongyu.com/

你可能感兴趣的文章