新手做Java,几多迷茫。下面总结一下创建项目的几种方式。

工作空间管理

很多软件,例如:FlexBuilder、PowerDesigner、VS Code等等,都会有一个工作空间的概念,我们可以集中一个目录,来管理自己的代码。所以,基于这种习惯,我们也可以将这种方式应用到Java的项目管理上。说白了,就是一个文件夹的事儿。

例如:D:\WEN\JavaWorkSpace

基于很多不建议中文出现在路径的说法,最好不要有中文和特殊字符。

SpringBoot WebApi项目创建

通常项目会按Controller、Service、Dao(Repository)、Entity进行分层划分,创建步骤如下:

创建项目

》打开新建项目

spring boot api设计 spring boot web api_创建项目

 

》项目构建器选择

spring boot api设计 spring boot web api_上传_02

 

因为要创建的是基于SpringBoot的WebApi项目,所以选择Spring Initializr;

创建项目需要联网,如果网络不好,会把人搞崩溃,SpringBoot插件会报很多错……

》项目设置

spring boot api设计 spring boot web api_工作空间_03

 

组:公司、部门的一个组织级标识;

工件:这个项目的标识;

与pom.xml中的坐标依赖是对应的,如:

<dependency>
     <groupId>org.mybatis</groupId>
     <artifactId>mybatis</artifactId>
     <version>3.4.5</version>
</dependency>

那么截图中的设置,即是:

<dependency>
       <groupId>com.tzl</groupId>
       <artifactId>001-tzl-create-project-demo</artifactId>
       <version>0.0.1-SNAPSHOT</version>
</dependency>

》选择依赖

spring boot api设计 spring boot web api_java 创建项目 创建模块 idea_04

 

因为现在建的是项目,所以选择的时候,要考虑选择的是所有模块共同的依赖,如果没有考虑好,就什么都不选,等以后重构,进行依赖提升。

但是此处SpringBoot的版本是需要确定好的,正式项目的话,都不建议选快照版。

》文件路径设置

spring boot api设计 spring boot web api_上传_05

 

放到对应的工作空间下即可。

点击Finish完成创建。项目自动打开,并导入依赖以及加载打开。

spring boot api设计 spring boot web api_创建项目_06

 

创建模块

 

创建WebApi模块

WebApi模块与项目的创建很相似

spring boot api设计 spring boot web api_java 创建项目 创建模块 idea_07

 

通过多种方式,打开新建模块的界面。

》项目构建器选择

spring boot api设计 spring boot web api_工作空间_08

 

仍然选择Spring Initializr;

》模块设置

spring boot api设计 spring boot web api_工作空间_09

 

》选择依赖

spring boot api设计 spring boot web api_spring boot api设计_10

 

因为是WebApi模块,将来是要作为启动模块的,所以Spring Web是必须要选择的。

》文件路径设置

spring boot api设计 spring boot web api_spring boot api设计_11

 

放在项目下即可。

点击Finish,即创建完成WebApi模块。

spring boot api设计 spring boot web api_创建项目_12

 

》添加Maven管理

有时候,创建好的模块没有被Maven管理起来,如上图所示,需要手动添加一下。

spring boot api设计 spring boot web api_上传_13

 

添加成功后,如下图所示:

spring boot api设计 spring boot web api_创建项目_14

 

 

创建Service模块

添加完成WebApi模块后,需要添加Service模块,因为Service模块,只作为Jar包被依赖,所以不需要使用Spring Initializr进行创建,直接创建Maven模块即可

》选择模块构建器

spring boot api设计 spring boot web api_java 创建项目 创建模块 idea_15

 

 

 》模块设置

spring boot api设计 spring boot web api_上传_16

 

 

注意构件坐标设置好。

 创建完成后,如下图

spring boot api设计 spring boot web api_spring boot api设计_17

 

 

 同时,在项目的pom文件中,该模块作为子模块进行了关联。

此时的WebApi模块,其父项目指向的是SpringBoot,需要手动修改一下,将其作为项目的子模块进行关联。

》修改项目pom文件

spring boot api设计 spring boot web api_创建项目_18

 

》修改WebApi模块pom文件

spring boot api设计 spring boot web api_上传_19

 

修改成

spring boot api设计 spring boot web api_上传_20

 

然后点击Maven的刷新按钮,会发现WebApi模块的(root)模识消失了。

创建其它模块

如法泡制,用创建Service同样的方式,创建Dao模块和Entity模块。全部创建完后,如下图所示

spring boot api设计 spring boot web api_java 创建项目 创建模块 idea_21

 

精简代码结构

有些人写代码,能运行不报错就算结束,有些人哪怕注释中的一个标点都要将其改正。而大部分对代码的整洁度还是有追求的。所以当我们进行代码上传的时候,会发现有些没用的代码,总是会变,有些个人的配置,放到了项目管理文件中,签入后,导致影响了同一团队的其它人。于是,我们想要代码能够尽量保持有用的代码上传,共享,而没用的临时文件,在本地临时存在。

所以这个步骤也是一开始我困惑的源头。几番尝试后,整理如下

》项目文件删除

spring boot api设计 spring boot web api_spring boot api设计_22

 

除.idea文件夹和pom文件外,都删除。删除前不妨做个备份,更保险。

如果是通过git作源代码管理的话,保留其配置文件,svn管理的话,可以都删。

删完后的结构如下

spring boot api设计 spring boot web api_spring boot api设计_23

 

多注意右侧的Maven管理,编译、打包、安装都需要用到,所以,如果右侧出现问题,将会影响后续的使用。

》模块文件删除

spring boot api设计 spring boot web api_上传_24

 

和项目的差不太多。没用的删除掉。

删除完成后

spring boot api设计 spring boot web api_上传_25

 

 如果删除之后,发现模块不见了,点一下右侧的Maven刷新即可。

最终呈现在眼前的是一套精简的结构。然后,然后就是在src下加自己的业务代码了。

》文件目录说明

spring boot api设计 spring boot web api_上传_26

当打开文件目录后,会发现.idea和.iml文件,如果项目没有什么特殊设置的话,可以不上传管理。删除后上传gitee,这是一个整洁的开源项目……

其它情况说明

创建项目的情况有很多种,有的是在一个项目下,通过包来划分层次的,不同的模块间,其实是业务模块的划分。根据实际情况进行调整。其实主要是对文件结构的了解,以及对其进行一定的尝试。实际工作当中,其实创建项目不常用,基本一个模板创建好后,项目都基于模板来写业务逻辑,但,知识的掌握,最好是系统的,完整的。

还有上述中创建WebApi的方式,其实也可以直接创建Maven项目,然后自己创建启动类,增加资源文件夹,随个人熟悉程度吧。

有不对的地方,还望高手指正