-
-
个人笔记,如有描述不当,欢迎留言指出~
jhipster学习记录之jdl
环境
- os:windows10
- java:1.8.0_161
- node:10.16.0
- npm:6.9.0
- jhipster:6.1.0
jhipster
学习jhipster最好的方式,当然是去看官网啦,而且英语不好的小伙伴可以去官方维护的中文站点👉here
官网的入门指南里告诉我们,在命令行中敲下入hipster,随后就是一系列的选择配置,最终等待jhipster生成代码。
但有没有觉得这样很low阿,它有这几个缺点:
- 每次新建项目,都有进行大量的配置选择,效率低
- 每次都只能生成一个项目,对于微服务项目,服务模块都要输入jhipster生成,效率低
所以我耐着性子继续往下看,当看到jdl的时候,发现上面两个缺点就不存在了
jdl(jhipster doman language)
jhipster领域驱动语言
,详见👉here
只要编写一次jdl文件,就可以到处运行,再也没有烦人的配置选择了🙄1
jhipster import-jdl "your jdl file"
它的语法其实挺简单,而且5.0以后支持注解,在定义的entity上直接使用@service、@dto、@paginate
来代替service、dto、paginate
下面简单介绍一下jhipster生成代码流程:
当在command中敲入jhipster,在一系列配置选择完后,jhipster会在根目录下生成.yo-rc.json
文件和 .jhipster
目录。
.yo-rc.json
里存放应用的配置,对应jdl的application.config.*jhipster
目录下存放应用的实体类配置,对应jdl中application.entites 、entity
jhipster再根据这些文件去生成项目代码。如果你需要重建一个相同配置jhipster项目的话,直接拷贝.yo-rc.json
文件和 .jhipster
目录放到新建文件夹下,进入command,敲下jhipster
,就会生成一个相同配置的项目
另外,jhipster一开始是支持前端框架angular
的,后来慢慢加入了react
和vue
。
但vue
却并不在默认的选择配置中,如果你用过jhipster命令就会知道,在进行clentframework
选项时,只会出现angular
和react
。如果前端如果要使用vue的话,就只能用jhipster提供的blueprint(蓝图)
功能1
2npm install -g generator-jhipster-vuejs
jhipster --blueprint vuejs
这样就可以生成一个前端框架是vue的项目。
那么如何在jdl里应用呢?
这里吐槽一下,官网里jdl的语法介绍的并不全,找了半天也没看到blueprint的语法!
后来断点调试jhipster-core中,发现your node_modules folder\node_modules\generator-jhipster\node_modules\jhipster-core\lib\core\jhipster\application_options.js
这个文件里存放了应用的所有配置参数
在你的j’d’l文件里加入下面的代码就可以啦1
2
3
4
5
6
7application {
config{
...
blueprint vuejs
...
}
}
此处奉上我练习写的jdl文件👉demo👈