您的位置 首页 java

alibaba cola 框架代码生成器

alibaba cola 框架代码生成器下载地址

验证码 rvgr

代码结构

项目中准备用 cola框架( 开发应用 [脚手架](,根据自己的理解,定义了如下的代码结构:

图中,

1:domain—xxx领域名分组—model下的叶子节点为文件夹

2:标绿的各叶子节点都表示具体的 Java 文件后缀名,此文件的其余部分根据Domain中具体的Aggregate名填充

(比如,要定义一个叫做Order的Aggregate,各叶子节点最终对应的文件为OrderDomainService.java,OrderGateWay.java,OrderCmd.java,OrderQry.java,OrderApiController.java)

3:标紫的文件为固定文件名,标蓝的文件可能需要合并一下目的使其所在文件夹下的文件减少

(比如,定义Order后又定义了一个叫User的Aggregate,可以把OrderApiController.java和UserApiController.java的内容合并,最终根据业务来)

4: 第一条model下包含的文件夹(”aggregates”, “entities”, “valueobjects”)中的Java文件名不做约束

5:非叶子节点,都为文件夹,名称固定

6:xxx领域名分组 也是文件夹,名称同具体的Aggregate

可见当我们定义一个Domain的Aggregate或者Entity时,要创建的相关类以及各个层级之间的关系调用还是挺多的,于是有了做一个代码生成器的想法。

代码生成器的约定:对于一个Entity我们只定义Id和name两个属性,重要的是生成正确的包定义(package)和相关的类引用(import)。

准备工作

用cola定义一个测试项目,可以在[阿里站点](生成

也可以通过本地

也可以在本地用脚手架,我采用的cola是4.1.0版本

mvn archetype:generate -DgroupId=com.test -DartifactId=myApp -Dversion=1.0.0-SNAPSHOT -Dpackage=com.test.myApp -DarchetypeArtifactId=cola-framework-archetype-web -DarchetypeGroupId=com.alibaba.cola -DarchetypeVersion=4.1.0

结构生成以后,除了start模块下,将其余各模块的myApp目录下的示例代码文件全部删除,比如app和client下的,其他目录一样

示例代码可以保留,但是代码生成器自动编译代码,会报错。不删除的话请手动调整。

为了演示,我这里在Infastructure模块中添加一个 Oracle 驱动,根据实际情况来

mybatis -config中也删除默认的配置

配置star模块下的application.properties

## 生成器

开发框架采用了Pyqt5,使用了qdarkstyle和 qt awesome库,集成了 notepad2 进行代码的查看

进入tool文件下,修改install.bat 配置一下Java目录

打开生成器

选择项目根目录(不要进入子目录)

生成器会将现有的代码罗列出来,注意:标记1,2,3的路径合并起来,才是各个Java文件的具体地址。

删除myapp文件下的代码文件后,各列表会是空的,但模块的路径显示

添加一个foo Aggregate

可见创建了20多个文件并自动编译,编译成功后弹窗消失

修改mapper文件对应到真实的表

进入start目录 mvn spring-boot:run

测试列表接口

新建

文章来源:智云一二三科技

文章标题:alibaba cola 框架代码生成器

文章地址:https://www.zhihuclub.com/180427.shtml

关于作者: 智云科技

热门文章

网站地图