本想利用代码生成器减少一些重复的繁琐操作,但是整合的时候遇到了下面的问题:

版本爆红了,看字面意思是这版本选用最近的版本。

image-20220425135704152

image-20220425152734186

原因 仔细检查一下项目下的依赖包,我发现mybatis-plus-generator的包没有导进来

后来查阅了一些资料,依赖坐标要如下写法

<!--        代码生成器-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-generator</artifactId>
            <version>3.5.1</version>
        </dependency>

        <dependency>
            <groupId>org.freemarker</groupId>
            <artifactId>freemarker</artifactId>
            <version>2.3.31</version>
        </dependency>

再检查一下项目的依赖包,发现需要的包都导进来了。

生成代码操作

可以自己创建一个test测试类执行一下下面的这个方法就可以了

注意:

  • 指定的输出目录(或mapperXml生成路径同)是全路径,即在你电脑的哪个盘哪个文件夹要指明清楚
  • 细致的可以看代码对应的注释
private void generate() {
    FastAutoGenerator.create("jdbc:mysql://localhost:3306/emsystem?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=Asia/Shanghai", "root", "root")
            .globalConfig(builder -> {
                builder.outputDir("G:\\我的超级文库\\毕业设计\\程序-后端\\EMSystem\\src\\main\\java"); // 指定输出目录
            })
            .packageConfig(builder -> {
                builder.parent("com.lys.emsystem") // 设置父包名
                        .moduleName("") // 设置父包模块名
                        .pathInfo(Collections.singletonMap(OutputFile.mapperXml, "G:\\我的超级文库\\毕业设计\\程序-后端\\EMSystem\\src\\main\\resources\\mapper")); // 设置mapperXml生成路径
            })
            .strategyConfig(builder -> {
                builder.entityBuilder().enableLombok();
                builder.mapperBuilder().enableMapperAnnotation().build();
                builder.controllerBuilder().enableHyphenStyle()  // 开启驼峰转连字符
                        .enableRestStyle();  // 开启生成@RestController 控制器
                builder.addInclude("tb_intent") // 设置需要生成的表名
                        .addTablePrefix("tb_"); // 设置过滤表前缀
            })
            .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
            .execute();

}

效果:

上面的代码要是执行成功的话,就能在项目下自动生成某个表对应的model,daoservice,mapper.xml,controller了,这样就能大大提高项目开发效率了。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐