Maven、SpringBoot框架结构优化

一、创建maven项目,名为test-parent,pom文件如下:

 ...
<artifactId>test-parent</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>pom</packaging><!--这个值默认是jar,一般不专门定义。这里值是pom,这个项目里只有一个pom文件-->
...
<properties><!--这里定义<depencies>引入的jar的版本值-->
<drools.version>7.1.0.Final</drools.version>
<springloaded.version>1.2.6.RELEASE</springloaded.version>
<axis.version>1.4</axis.version>
<axis-jaxrpc.version>1.2.1</axis-jaxrpc.version>
</properties>
...
<repositories><!--这里定义私服地址-->
...
</repositories>
...
<dependencies>
<dependency>
<groupId>org.drools</groupId><!--ctrl+单击可以查看jar包的pom文件-->
<artifactId>drools-bom</artifactId>
<type>pom</type>
<version>${drools.version}</version><!--这里的值在上面<properties>中定义-->
<scope>import</scope>
</dependency>
...
</dependencies>
...

test-parent用于统一管理jar包的版本、私服地址。

分布式开发的多个模块,引用的同一个jar,最好统一一个版本,所以版本放在parent中维护。防止版本太多造成jar包冲突。

二、建公用vo项目和arch项目

公用vo项目 test-common-vo:存放分布式开发的其他项目会用到的vo对象,或者公用vo对象。pom.xml:

 ...
<parent><!--设置parent为test-parent项目,继承它的pom配置-->
<groupId>com.test</groupId>
<artifactId>test-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>test-common-vo</artifactId>
...
<depencies><!--用到的jar包即使parent项目有,这里仍然需要配置才能引入-->
...
</depencies>

公用arch项目存放公用的方法,比如feign调用其他模块的方法

将这两个项目package或者deploy打包放到私服上,在parent项目的pom中引入:

 ...
<dependency>
<groupId>com.test</groupId>
<artifactId>test-common-vo</artifactId>
<version>${test-common-vo.version}</version>
</dependency>
<groupId>com.test</groupId>
<artifactId>test-common-arch</artifactId>
<version>${test-common-arch.version}</version>
</dependency>
...

三、业务模块的项目test-yeWu-server

业务模块的pom配置parent:

 ...
<parent><!--配parent-->
<groupId>com.test</groupId>
<artifactId>test-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<dependency><!--引入公用-->
<groupId>com.test</groupId>
<artifactId>test-common-arch</artifactId>
</dependency>
<!--如果需要vo的话引入-->
<dependency><!--引入公用-->
<groupId>com.test</groupId>
<artifactId>test-common-vo</artifactId>
</dependency>
...
上一篇:MySQL增删改查


下一篇:【转】Dancing Links题集