MybatisPlus代码生成器

1、导入依赖

<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>

2、代码生成器模板

@Test
public void test01(){
    //获取当前项目地址
    String project_path = System.getProperty("user.dir");
    FastAutoGenerator.create("jdbc:mysql://127.0.0.1:3306/test? characterEncoding=utf-8&userSSL=false", "username", "pwd")
            .globalConfig(builder -> {
                builder.author("xiaobing") // 设置作者
                        //.enableSwagger() // 开启 swagger 模式
                        .fileOverride() // 覆盖已生成文件
                        .outputDir(project_path+"/src/main/java"); // 指定输出目录
            })
            .packageConfig(builder -> {
                builder.parent("com.xiaobing") // 设置父包名
                        .moduleName("mybatisx") // 设置父包模块名
                        .pathInfo(Collections.singletonMap(OutputFile.mapperXml, project_path+"/src/main/resources/mapper")); // 设置mapperXml生成路径
            })
            .strategyConfig(builder -> {
                builder
                        .addInclude("t_user") // 设置需要生成的表名,需要提前到数据库建表且IDEA连接上库表
                        .addTablePrefix("t_", "c_"); // 设置过滤表前缀
            })
            .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker 引擎模板,默认的是Velocity引擎模板
            .execute();
}

3、代码执行之前 => 生成代码 => 生成之后

 4、简单完善下controller进行测试

@RestController
@RequestMapping("/mybatisx/user")
public class UserController {

    @Autowired
    IUserService iUserService;

    @GetMapping("by/{id}")
    public User getUserById(@PathVariable("id") Integer id){
       return iUserService.getById(id);
    }
}

5、启动项目访问接口

 _ _   |_  _ _|_. ___ _ |    _ 
| | |\/|_)(_| | |_\  |_)||_|_\ 
     /               |         
                        3.5.1 
2022-09-22 15:39:17.246  INFO 16992 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
2022-09-22 15:39:17.253  INFO 16992 --- [           main] c.x.mybatisx.MybatisxDemoApplication     : Started MybatisxDemoApplication in 1.625 seconds (JVM running for 2.08)

posted @ 2022-09-22 15:50  o小兵o  阅读(151)  评论(0编辑  收藏  举报