摘要:全自动代码生成器项目地址代码模版位于下可根据需要自行修改第一个模版是根据编写的若不适合可以自行修改模版或选择其他模版配置文件在下创建文件随意例如可创建多个配置文件内容如下填入数据库配置以及生成代码的包名模版文件映射用于自定义生成
全自动代码生成器mybatis-generator
项目地址https://github.com/GitHub-Laziji/mybatis-generator
代码模版位于resources下, 可根据需要自行修改
第一个模版是根据 commons-mybatis 编写的, 若不适合可以自行修改模版或选择其他模版配置文件
在resources下创建application-${name}.yml文件, ${name}随意, 例如: application-example.yml, 可创建多个
配置文件内容如下, 填入数据库配置, 以及生成代码的包名
模版文件映射用于自定义生成文件的包格式以及文件名
动态属性包含
{packageFilePath} 包文件路径 例如: com/xxx/xxx
{className} 类名 由表名改为驼峰命名法得来
{suffix} 类名后缀 DO或VO
一般按以下配置即可
现在项目中有两套模版template.path 可以选mybatis 或 mybatis-default
也可以自行扩展
spring: datasource: url: jdbc:mysql://xxx.xxx.xxx.xxx:3306/xxxx?characterEncoding=utf-8 username: xxxxxx password: xxxxxx generator: package: com.xxx.xxx template: path: mybatis mapping: | Model.java.vm: main/java/{packageFilePath}/database/model/{className}.java Query.java.vm: main/java/{packageFilePath}/database/query/{className}Query.java Dao.java.vm: main/java/{packageFilePath}/database/dao/{className}.java Service.java.vm: main/java/{packageFilePath}/database/service/{className}Service.java Mapper.xml.vm: main/resources/mapper/{className}Mapper.xml使用
在test文件下创建测试类
@ActiveProfiles("example")中填入刚才配置文件名的name
tableNames需要生成的表, 可以多个
zipPath 代码导出路径
调用generatorService.generateZip传入参数可以是表名数组String[]或者TableItem[]
运行测试方法
package pg.laziji.generator; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.ActiveProfiles; import org.springframework.test.context.junit4.SpringRunner; import pg.laziji.generator.mybatis.GeneratorService; import javax.annotation.Resource; import java.io.IOException; @ActiveProfiles("example") @RunWith(SpringRunner.class) @SpringBootTest public class ExampleTest { @Resource private GeneratorService generatorService; @Test public void test(){ String zipPath = "/home/code.zip"; // String[] tableNames = new String[]{"table1","table2"}; // generatorService.generateZip(tableNames,zipPath); TableItem[] tableItems = new TableItem[]{ new TableItem("table1", "TableA"), new TableItem("table2", "TableB") }; generatorService.generateZip(tableItems,zipPath); } }
欢迎关注我的博客公众号
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/77394.html
摘要:原博地址本文介绍如何用编写高度自定义的代码生成器是一款优秀的持久层框架,它支持定制化存储过程以及高级映射。避免了几乎所有的代码和手动设置参数以及获取结果集。 原博地址https://laboo.top/2018/11/26/a-db/#more 本文介绍如何用Java编写高度自定义的代码生成器 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBa...
摘要:代码生成代码生成内容在基础上,新增等模板拓展,生成通用分页方法代码生成模板数据库新建表,即可生成后台分页基础代码,还有官网地址代码生成步骤创建数据库表,例如注意记得加上表注释,字段列注释,方便生成类注释注释 spring-boot-plus 代码生成 Generator 代码生成内容 spring-boot-plus在mybatis-plus基础上,新增param/vo等模板 拓展c...
摘要:代码生成在基础上,新增等模板拓展,生成通用分页方法代码生成模板数据库新建表,即可生成后台分页基础代码,还有官网地址代码生成步骤创建数据库表,例如注意记得加上表注释,字段列注释,方便生成类注释注释 代码生成 Generator spring-boot-plus在mybatis-plus基础上,新增param/vo等模板拓展controller/service/mapper/xml,生成通...
摘要:建模语言建模语言是可用于表达信息或知识或系统的任何人造语言,该结构由一组一致的规则定义,目标是可视化,推理,验证和传达系统设计。将这些文件安排到不同的地方称为源代码树。源代码树的结构通常反映了软件的体系结构。 大纲 软件构建的一般过程: 编程/重构 审查和静态代码分析 调试(倾倒和记录)和测试 动态代码分析/分析 软件构建的狭义过程(Build): 构建系统:组件和过程 构建变体...
摘要:引用泛型除了方法因不能使用外部实例参数外,其他继承实现成员变量,成员方法,方法返回值等都可使用。因此,生成的字节码仅包含普通的类,接口和方法。 为什么要使用泛型程序设计? 一般的类和方法,只能使用具体的类型:要么是基本类型,要么是自定义类的对应类型;如果要编写可以应用于多种类型的代码,这种刻板的限制对代码的束缚就会很大。----摘自原书Ordinary classes and meth...
阅读 884·2021-11-24 09:38
阅读 821·2021-11-23 09:51
阅读 2897·2021-11-16 11:44
阅读 1699·2021-09-22 15:52
阅读 1582·2021-09-10 11:20
阅读 1332·2019-08-30 13:47
阅读 1245·2019-08-29 12:36
阅读 3265·2019-08-26 10:43