AI智能
改变未来

Java如何搭建脚手架(自动生成通用代码),创建自定义的archetype(项目模板)

  新建项目时,有些配置和包总是相同的,每次添加非常麻烦,并且都是重复性复制粘贴的工作。此时,一个优秀的程序员,会想着如何不做重复性的工作,去提高工作效率。

  那什么叫脚手架呢?当搭建一个项目时,一些基础性的工作,如一些共同的组件、服务、配置、测试等在新建项目时就一起生成,形成一个模板。这个就叫做脚手架。

本篇博客包含

  ①分析整个工程包含的结构

  ②如何创建脚手架;

  ③如何使用脚手架

一、项目包含的结构

  在我们的项目中,有一个文件,叫read.me,就是用来说明项目的信息,其中就描述了项目的相关信息。

  1.项目包结构

    每个公司的项目名称、包名称,都有自己公司的标准。所以结构都不相同。并且每个项目的特点也不同。对于小项目或者以模块为项目的微服务,多采用controller,service,dao,entity的分包方式;而对于大的单体应用,更多采用的是以业务命名的包方式。这两种各有优缺点。前者命名的方式,代码量相对较少,代码复用率高,缺点是相对较聚集,耦合度高,拆分不方便。后者业务能够聚聚,方便查找,更清晰,维护方便。本人更倾向于后者。

以本人的为例,如下图所示:

  2.各个层的模板类

  包括controller、service、mapper等包中的模板类。每个类的命名、注解、返回的响应实体都统一。开发代码时以这些类作为模板,统一风格和标准。

  如下图所示:

二、如何创建脚手架

  创建步骤:

  1.首先创建一个spring-boot的maven项目。

    假如需要搭建一个web项目,则需要引入SpringMvc作为基础;假如搭建一个task或者rop项目,则需要引入对于的定时任务包等相关包。(参考上面的包结构)

  2.搭建基本的项目完成

    将项目运行起来,能够访问并进行单元测试,说明项目基本的没有问题。将项目中的.class,.setting,.project的文件删除调。

  3.然后在项目pom中加入以下插件配置。

<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-archetype-plugin</artifactId><version>3.0.1</version></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.8.1</version></plugin>

  注:对于已经存在的项目,也可以将项目做成脚手架,同样先将.class,.setting,.project等不必要的文件删除,再加入插件

  4.运行插件

  在maven中,双击archetype:create-from-project运行archetype插件,运行的结果在控制台中显示:BUILD SUCCESS 说明构建成功,同时可以看到文件存放的路径。如下图:

  6.执行安装命令

  在文件的存放路径下(archetype目录中),打开cmd窗口,执行命令:mvn clean install 。如下图所示,直到看到BUILD SUCCESS,说明执行成功了。

  7.执行结果

  成功之后,就可以在本地仓库的根目录中看到一个文件:archetype-catalog.xml, 打开该文件,可以看到对应的archetypes结果,并且其中的groupId和artifactId能在仓库中找到,如下图:

  

  8.然后依然在该archetype目录执行命令:mvn archetype:crawl

  当看到BUILD SUCCESS时,说明成功了。

三、如何使用脚手架

  在IntelliJ IDEA中使用脚手架

  1.添加脚手架

  在idea中引入脚手架 点击菜单File -> new -> Project… 如下图所示,选择maven,勾选Create from archetype,点击 Add Archetype按钮,

填写groupId和artifactId、version信息(就是archetype-catalog.xml文件中的信息),点击OK,便添加完成。

  2.填写项目名称

  点击next,填写项目名称,然后确定,便生成了整个项目结构。  

  注:包下有文件的才会生成,而空包不会生成。

  结果如下图:

  

若觉得博文不错请点击推荐,感谢你的支持。

.

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » Java如何搭建脚手架(自动生成通用代码),创建自定义的archetype(项目模板)